Add wasm tacle-bench targets

This commit is contained in:
2026-06-12 20:06:22 +02:00
parent 30daa8a00c
commit 08c2e9c13d
1122 changed files with 520422 additions and 0 deletions

View File

@ -0,0 +1,25 @@
# ~~~
# SPDX-License-Identifier: MIT
# SPDX-FileCopyrightText: 2026, Friedrich-Alexander-Universität Erlangen-Nürnberg (FAU)
# ~~~
cmake_minimum_required(VERSION 3.20)
project(gsm_enc)
set(TACLEBENCH_ROOT_PATH "${CMAKE_CURRENT_LIST_DIR}/../../..")
set(REPOSITORY_ROOT_PATH "${CMAKE_CURRENT_LIST_DIR}/../../../..")
set(APP_TARGET_NAME "${CMAKE_PROJECT_NAME}")
if(DEFINED TACLEBENCH_VARIANT AND "${TACLEBENCH_VARIANT}" STREQUAL "inline")
set(APP_SOURCE_FILE_PATH
"generated/modified_sources/inline/gsm_enc.c")
else()
set(APP_SOURCE_FILE_PATH
"generated/modified_sources/default/gsm_enc.c")
endif()
include(${REPOSITORY_ROOT_PATH}/cmake/taclebench_wasm.cmake)

View File

@ -0,0 +1,16 @@
Copyright 1992, 1993, 1994 by Jutta Degener and Carsten Bormann,
Technische Universitaet Berlin
Any use of this software is permitted provided that this notice is not
removed and that neither the authors nor the Technische Universitaet Berlin
are deemed to have made any representations as to the suitability of this
software for any purpose nor are held responsible for any defects of
this software. THERE IS ABSOLUTELY NO WARRANTY FOR THIS SOFTWARE.
As a matter of courtesy, the authors request to be informed about uses
this software has found, about bugs in this software, and about any
improvements that may be of general interest.
Berlin, 28.11.1994
Jutta Degener
Carsten Bormann

View File

@ -0,0 +1,8 @@
2017-06-28:
- Rename benchmark to gsm_enc.
- Add prefix 'gsm_enc_'.
- Introduce gsm_enc_init and gsm_enc_return functions.
- Rewrite negative shifts to avoid undefined behavior.
- Fix comparisons between signed and unsigned types.
- Remove unused variables and parameters.
- Fix memory corruption in gsm_enc_Short_term_analysis_filtering.

View File

@ -0,0 +1,452 @@
#ifndef DATA_H
#define DATA_H
gsm_signal gsm_enc_pcmdata[ ] = {
( short )0x0000, ( short )0x0000, ( short )0x0010, ( short )0x0010, ( short )0x0010, ( short )0x0020, ( short )0x0020, ( short )0x0018,
( short )0x0028, ( short )0x0020, ( short )0x0020, ( short )0x0028, ( short )0x0028, ( short )0x0020, ( short )0x0030, ( short )0x0030,
( short )0x0028, ( short )0x0010, ( short )0x0008, ( short )0x0000, ( short )0x0050, ( short )0x0060, ( short )0x0058, ( short )0x00D0,
( short )0x00E0, ( short )0x00D0, ( short )0x0118, ( short )0x0128, ( short )0x0118, ( short )0x0128, ( short )0x0110, ( short )0x0100,
( short )0x00A0, ( short )0x0058, ( short )0x0048, ( short )0x0058, ( short )0x0060, ( short )0x0058, ( short )0x0050, ( short )0x0048,
( short )0x0040, ( short )0x0030, ( short )0x0020, ( short )0x0010, ( short )0x0008, ( short )0xFFF8, ( short )0xFFE8, ( short )0xFFE0,
( short )0xFFD8, ( short )0xFFC8, ( short )0xFFC0, ( short )0xFFC0, ( short )0xFF98, ( short )0xFF78, ( short )0xFF78, ( short )0xFFC8,
( short )0x0000, ( short )0x0010, ( short )0x0040, ( short )0x0060, ( short )0x0068, ( short )0x0078, ( short )0x0078, ( short )0x0070,
( short )0x00A8, ( short )0x00C8, ( short )0x00C8, ( short )0x00E0, ( short )0x00F0, ( short )0x00E8, ( short )0x00F8, ( short )0x00F8,
( short )0x00F0, ( short )0x00E0, ( short )0x00C8, ( short )0x00B8, ( short )0x00E8, ( short )0x0100, ( short )0x00F8, ( short )0x00E8,
( short )0x00D8, ( short )0x00C0, ( short )0x00A8, ( short )0x0020, ( short )0xFFC0, ( short )0xFFA0, ( short )0xFFA0, ( short )0xFFA8,
( short )0xFFB0, ( short )0xFFD0, ( short )0xFFF8, ( short )0x0000, ( short )0x0020, ( short )0x0030, ( short )0x0030, ( short )0x0030,
( short )0x0028, ( short )0x0020, ( short )0xFFF0, ( short )0xFFD0, ( short )0xFFC8, ( short )0xFFC8, ( short )0xFFD0, ( short )0xFFD8,
( short )0xFFE8, ( short )0xFFF8, ( short )0xFFF8, ( short )0x0008, ( short )0x0018, ( short )0x0018, ( short )0x0078, ( short )0x00B8,
( short )0x00C0, ( short )0x0100, ( short )0x0130, ( short )0x0128, ( short )0x0108, ( short )0x00D8, ( short )0x00C0, ( short )0x0078,
( short )0x0038, ( short )0x0020, ( short )0x0020, ( short )0x0000, ( short )0xFFE0, ( short )0xFFE0, ( short )0xFFD8, ( short )0xFFC8,
( short )0xFFC8, ( short )0xFFA0, ( short )0xFF88, ( short )0xFF98, ( short )0xFF80, ( short )0xFF70, ( short )0xFF80, ( short )0xFF78,
( short )0xFF78, ( short )0xFF90, ( short )0xFF80, ( short )0xFF78, ( short )0xFF78, ( short )0xFF50, ( short )0xFF30, ( short )0xFF50,
( short )0xFF38, ( short )0xFF30, ( short )0xFF40, ( short )0xFF58, ( short )0xFF70, ( short )0xFF80, ( short )0xFF50, ( short )0xFF38,
( short )0xFF40, ( short )0xFF18, ( short )0xFF00, ( short )0xFF08, ( short )0xFF40, ( short )0xFF68, ( short )0xFF80, ( short )0xFF88,
( short )0xFF88, ( short )0xFF88, ( short )0xFF88, ( short )0xFFB8, ( short )0xFFE0, ( short )0xFFF0, ( short )0xFFD0, ( short )0xFFB8,
( short )0xFFB8, ( short )0xFF90, ( short )0xFF70, ( short )0xFF70, ( short )0xFF50, ( short )0xFF40, ( short )0xFF40, ( short )0xFF58,
( short )0xFF70, ( short )0xFF80, ( short )0xFFC8, ( short )0x0000, ( short )0x0018, ( short )0x0030, ( short )0x0048, ( short )0x0048,
( short )0x0028, ( short )0x0008, ( short )0xFFF8, ( short )0xFFD8, ( short )0xFFC8, ( short )0xFFB8, ( short )0xFF98, ( short )0xFF78,
( short )0xFF70, ( short )0xFFF0, ( short )0x0058, ( short )0x0088, ( short )0x00B8, ( short )0x00D0, ( short )0x00D8, ( short )0x00E8,
( short )0x0138, ( short )0x0160, ( short )0x0158, ( short )0x0170, ( short )0x0178, ( short )0x0160, ( short )0x0168, ( short )0x0160,
( short )0x0140, ( short )0x0118, ( short )0x00F0, ( short )0x00C8, ( short )0x0098, ( short )0x0078, ( short )0x0060, ( short )0x0018,
( short )0xFFC0, ( short )0xFF90, ( short )0xFF48, ( short )0xFF00, ( short )0xFEE8, ( short )0xFEC8, ( short )0xFEB8, ( short )0xFEB8,
( short )0xFEA0, ( short )0xFE88, ( short )0xFE80, ( short )0xFEB8, ( short )0xFEF8, ( short )0xFF38, ( short )0xFFA0, ( short )0xFFE8,
( short )0x0008, ( short )0x0030, ( short )0x0058, ( short )0x0068, ( short )0x0068, ( short )0x0070, ( short )0x0068, ( short )0x0050,
( short )0x0040, ( short )0x0040, ( short )0x0020, ( short )0x0000, ( short )0xFFE8, ( short )0xFFF0, ( short )0xFFF8, ( short )0xFFF8,
( short )0x0038, ( short )0x0068, ( short )0x0078, ( short )0x0038, ( short )0x0008, ( short )0xFFF0, ( short )0xFFE0, ( short )0xFFD8,
( short )0xFFD8, ( short )0xFFE0, ( short )0xFFD0, ( short )0xFFC8, ( short )0x0000, ( short )0x0030, ( short )0x0048, ( short )0x0068,
( short )0x0080, ( short )0x0088, ( short )0x0088, ( short )0x0088, ( short )0x0088, ( short )0x0088, ( short )0x0088, ( short )0x0078,
( short )0x0098, ( short )0x00B0, ( short )0x00B8, ( short )0x0098, ( short )0x0070, ( short )0x0058, ( short )0x0060, ( short )0x0078,
( short )0x00A8, ( short )0x00B8, ( short )0x00A8, ( short )0x00A0, ( short )0x0080, ( short )0x0068, ( short )0x0060, ( short )0x0058,
( short )0x0048, ( short )0x0030, ( short )0x0038, ( short )0x0038, ( short )0x0030, ( short )0x0050, ( short )0x0058, ( short )0x0060,
( short )0x0030, ( short )0x0008, ( short )0xFFF8, ( short )0xFF90, ( short )0xFF48, ( short )0xFF28, ( short )0xFF10, ( short )0xFEF8,
( short )0xFEF0, ( short )0xFED8, ( short )0xFEB0, ( short )0xFEB0, ( short )0xFEA8, ( short )0xFEB8, ( short )0xFED8, ( short )0xFEF8,
( short )0xFF10, ( short )0xFF20, ( short )0xFF40, ( short )0xFF58, ( short )0xFF80, ( short )0xFFA0, ( short )0xFFB8, ( short )0xFFC8,
( short )0xFFD8, ( short )0xFFE0, ( short )0xFFF0, ( short )0x0048, ( short )0x0098, ( short )0x00B0, ( short )0x0068, ( short )0x0018,
( short )0xFFF8, ( short )0xFFE8, ( short )0xFFF0, ( short )0xFFF8, ( short )0x0020, ( short )0x0038, ( short )0x0038, ( short )0x0050,
( short )0x0068, ( short )0x0070, ( short )0x0068, ( short )0x0060, ( short )0x0060, ( short )0x0038, ( short )0x0020, ( short )0x0018,
( short )0x0040, ( short )0x0060, ( short )0x0068, ( short )0x0040, ( short )0x0010, ( short )0x0000, ( short )0xFFB0, ( short )0xFF78,
( short )0xFF70, ( short )0xFF90, ( short )0xFFA8, ( short )0xFFC8, ( short )0xFF98, ( short )0xFF50, ( short )0xFF50, ( short )0xFF50,
( short )0xFF58, ( short )0xFF68, ( short )0xFF48, ( short )0xFF20, ( short )0xFF18, ( short )0xFF38, ( short )0xFF60, ( short )0xFF70,
( short )0xFF80, ( short )0xFF98, ( short )0xFFA0, ( short )0xFFB8, ( short )0xFFD0, ( short )0xFFE0, ( short )0x0018, ( short )0x0048,
( short )0x0058, ( short )0x00B0, ( short )0x00F8, ( short )0x0108, ( short )0x0118, ( short )0x0120, ( short )0x0118, ( short )0x0130,
( short )0x0148, ( short )0x0140, ( short )0x0130, ( short )0x0120, ( short )0x0108, ( short )0x0098, ( short )0x0038, ( short )0x0018,
( short )0xFFD0, ( short )0xFF90, ( short )0xFF80, ( short )0xFF58, ( short )0xFF38, ( short )0xFF30, ( short )0xFF48, ( short )0xFF68,
( short )0xFF78, ( short )0xFF88, ( short )0xFFB8, ( short )0xFFD8, ( short )0xFFE8, ( short )0xFFD8, ( short )0xFFF0, ( short )0x0010,
( short )0x0020, ( short )0x0020, ( short )0x0018, ( short )0x0028, ( short )0x0030, ( short )0x0030, ( short )0x0038, ( short )0x0060,
( short )0x0080, ( short )0x0080, ( short )0x00B0, ( short )0x00D8, ( short )0x00D0, ( short )0x00B8, ( short )0x00A8, ( short )0x00A8,
( short )0x00A0, ( short )0x0090, ( short )0x0078, ( short )0x0070, ( short )0x0068, ( short )0x0048, ( short )0x0018, ( short )0x0008,
( short )0x0008, ( short )0x0000, ( short )0x0000, ( short )0xFFE8, ( short )0xFFB0, ( short )0xFF90, ( short )0xFF88, ( short )0xFF70,
( short )0xFF60, ( short )0xFF60, ( short )0xFF90, ( short )0xFFC0, ( short )0xFFD0, ( short )0xFFD8, ( short )0xFFE0, ( short )0xFFE8,
( short )0x0018, ( short )0x0050, ( short )0x0058, ( short )0x0030, ( short )0x0008, ( short )0x0000, ( short )0x0018, ( short )0x0038,
( short )0x0038, ( short )0x0048, ( short )0x0050, ( short )0x0050, ( short )0x0020, ( short )0x0000, ( short )0xFFF8, ( short )0xFFB0,
( short )0xFF70, ( short )0xFF68, ( short )0xFFB0, ( short )0xFFE8, ( short )0xFFF8, ( short )0xFFF8, ( short )0xFFF8, ( short )0xFFF0,
( short )0x0030, ( short )0x0070, ( short )0x0090, ( short )0x0098, ( short )0x0098, ( short )0x0090, ( short )0x00A0, ( short )0x00B0,
( short )0x00B8, ( short )0x00C0, ( short )0x00C0, ( short )0x00A8, ( short )0x0098, ( short )0x0088, ( short )0x0078, ( short )0x0050,
( short )0x0030, ( short )0x0020, ( short )0xFFD8, ( short )0xFF98, ( short )0xFF88, ( short )0xFF50, ( short )0xFF20, ( short )0xFF18,
( short )0xFEF8, ( short )0xFEE0, ( short )0xFEE8, ( short )0xFE70, ( short )0xFE08, ( short )0xFE00, ( short )0xFE48, ( short )0xFE98,
( short )0xFEB8, ( short )0xFEE8, ( short )0xFF10, ( short )0xFF28, ( short )0xFF18, ( short )0xFF10, ( short )0xFF18, ( short )0xFF48,
( short )0xFF70, ( short )0xFF88, ( short )0xFFE0, ( short )0x0028, ( short )0x0040, ( short )0x0058, ( short )0x0068, ( short )0x0070,
( short )0x0078, ( short )0x0070, ( short )0x0068, ( short )0x0068, ( short )0x0078, ( short )0x0080, ( short )0x0080, ( short )0x0088,
( short )0x0088, ( short )0x0080, ( short )0x0058, ( short )0x0030, ( short )0x0020, ( short )0x0018, ( short )0x0018, ( short )0x0018,
( short )0x0050, ( short )0x0090, ( short )0x00A0, ( short )0x0080, ( short )0x0060, ( short )0x0050, ( short )0x0030, ( short )0x0018,
( short )0x0010, ( short )0x0028, ( short )0x0038, ( short )0x0038, ( short )0x0018, ( short )0xFFF8, ( short )0xFFF0, ( short )0x0000,
( short )0x0020, ( short )0x0020, ( short )0x0030, ( short )0x0030, ( short )0x0030, ( short )0x0040, ( short )0x0050, ( short )0x0050,
( short )0x0050, ( short )0x0048, ( short )0x0048, ( short )0x0048, ( short )0x0048, ( short )0x0048, ( short )0x0078, ( short )0x00A0,
( short )0x00A8, ( short )0x00C0, ( short )0x00C8, ( short )0x00C0, ( short )0x00D0, ( short )0x00E0, ( short )0x00D8, ( short )0x00E8,
( short )0x00F0, ( short )0x00E0, ( short )0x0100, ( short )0x0118, ( short )0x0110, ( short )0x0100, ( short )0x00F0, ( short )0x00D8,
( short )0x0090, ( short )0x0048, ( short )0x0028, ( short )0x0020, ( short )0x0020, ( short )0x0020, ( short )0x0038, ( short )0x0050,
( short )0x0050, ( short )0x0050, ( short )0x0048, ( short )0x0040, ( short )0x0050, ( short )0x0060, ( short )0x0060, ( short )0x0040,
( short )0xFFC0, ( short )0xFF58, ( short )0xFF40, ( short )0xFF90, ( short )0xFFE8, ( short )0x0000, ( short )0x0020, ( short )0x0030,
( short )0x0030, ( short )0x0068, ( short )0x0098, ( short )0x00A8, ( short )0x0110, ( short )0x0168, ( short )0x0170, ( short )0x0148,
( short )0x0118, ( short )0x00F0, ( short )0x00E8, ( short )0x00E0, ( short )0x00D0, ( short )0x0098, ( short )0x0060, ( short )0x0040,
( short )0x0000, ( short )0xFFD8, ( short )0xFFD8, ( short )0xFFC0, ( short )0xFFB0, ( short )0xFFB0, ( short )0xFF78, ( short )0xFF30,
( short )0xFF10, ( short )0xFEF0, ( short )0xFEE8, ( short )0xFEF0, ( short )0xFEC8, ( short )0xFED0, ( short )0xFEF8, ( short )0xFF00,
( short )0xFF10, ( short )0xFF20, ( short )0xFF50, ( short )0xFF78, ( short )0xFF90, ( short )0xFF80, ( short )0xFF70, ( short )0xFF70,
( short )0xFF80, ( short )0xFF98, ( short )0xFFA0, ( short )0xFFB8, ( short )0xFFD0, ( short )0xFFD8, ( short )0xFFF0, ( short )0x0000,
( short )0x0008, ( short )0x0028, ( short )0x0048, ( short )0x0058, ( short )0x0078, ( short )0x0070, ( short )0x0058, ( short )0x0068,
( short )0x0098, ( short )0x00B8, ( short )0x00D8, ( short )0x00F0, ( short )0x00F0, ( short )0x00E8, ( short )0x00F8, ( short )0x0100,
( short )0x00D8, ( short )0x00D0, ( short )0x00C8, ( short )0x00E8, ( short )0x0100, ( short )0x00F0, ( short )0x00E0, ( short )0x00C8,
( short )0x00B8, ( short )0x00A0, ( short )0x0078, ( short )0x0058, ( short )0x0038, ( short )0x0020, ( short )0x0010, ( short )0x0010,
( short )0x0018, ( short )0x0010, ( short )0x0010, ( short )0x0010, ( short )0x0018, ( short )0x0028, ( short )0x0008, ( short )0xFFE0,
( short )0xFFC8, ( short )0xFF80, ( short )0xFF48, ( short )0xFF38, ( short )0xFF40, ( short )0xFF48, ( short )0xFF48, ( short )0xFF70,
( short )0xFF90, ( short )0xFFA8, ( short )0xFFB8, ( short )0xFFC0, ( short )0xFFC8, ( short )0xFFC0, ( short )0xFFC0, ( short )0xFFC0,
( short )0xFFB0, ( short )0xFFA0, ( short )0xFFA0, ( short )0xFFA0, ( short )0xFFA8, ( short )0xFFB0, ( short )0xFF68, ( short )0xFF28,
( short )0xFF08, ( short )0xFEF8, ( short )0xFEF8, ( short )0xFEE8, ( short )0xFEE0, ( short )0xFED8, ( short )0xFEA8, ( short )0xFE98,
( short )0xFEA8, ( short )0xFEA8, ( short )0xFEA0, ( short )0xFEA0, ( short )0xFED0, ( short )0xFF00, ( short )0xFF30, ( short )0xFF28,
( short )0xFF38, ( short )0xFF58, ( short )0xFF48, ( short )0xFF40, ( short )0xFF48, ( short )0xFFB0, ( short )0x0010, ( short )0x0038,
( short )0x0028, ( short )0x0010, ( short )0x0008, ( short )0x0050, ( short )0x00A0, ( short )0x00B8, ( short )0x00A0, ( short )0x0080,
( short )0x0070, ( short )0x0090, ( short )0x00B0, ( short )0x00B0, ( short )0x00B8, ( short )0x00B8, ( short )0x00B0, ( short )0x00C0,
( short )0x00D0, ( short )0x00C8, ( short )0x00A0, ( short )0x0068, ( short )0x0038, ( short )0xFFF0, ( short )0xFFB0, ( short )0xFF88,
( short )0xFF78, ( short )0xFF68, ( short )0xFF60, ( short )0xFF90, ( short )0xFFC0, ( short )0xFFE0, ( short )0x0000, ( short )0x0020,
( short )0x0030, ( short )0x00A0, ( short )0x0110, ( short )0x0138, ( short )0x0140, ( short )0x0148, ( short )0x0148, ( short )0x0110,
( short )0x00E8, ( short )0x00C0, ( short )0x00A0, ( short )0x0088, ( short )0x0068, ( short )0x0008, ( short )0xFFB0, ( short )0xFF88,
( short )0xFF58, ( short )0xFF30, ( short )0xFF20, ( short )0xFEF8, ( short )0xFED8, ( short )0xFED8, ( short )0xFF00, ( short )0xFF20,
( short )0xFF38, ( short )0xFF50, ( short )0xFF68, ( short )0xFF88, ( short )0xFFA0, ( short )0xFFB8, ( short )0x0020, ( short )0x0080,
( short )0x00A0, ( short )0x00D8, ( short )0x0100, ( short )0x0100, ( short )0x0138, ( short )0x0168, ( short )0x0148, ( short )0x0128,
( short )0x0120, ( short )0x00F8, ( short )0x00E8, ( short )0x00E0, ( short )0x00C0, ( short )0x00A8, ( short )0x00B0, ( short )0x0098,
( short )0x0070, ( short )0x0048, ( short )0x0030, ( short )0xFFD0, ( short )0xFF60, ( short )0xFF48, ( short )0xFF10, ( short )0xFEA8,
( short )0xFEA8, ( short )0xFEC0, ( short )0xFEC0, ( short )0xFEE8, ( short )0xFEB0, ( short )0xFE58, ( short )0xFE88, ( short )0xFED0,
( short )0xFEB8, ( short )0xFE48, ( short )0xFE58, ( short )0xFEE8, ( short )0xFF28, ( short )0xFF18, ( short )0xFF60, ( short )0x00A0,
( short )0x01A0, ( short )0x0188, ( short )0x0178, ( short )0x0208, ( short )0x0208, ( short )0x0100, ( short )0x0018, ( short )0xFFE0,
( short )0xFEE0, ( short )0xFD68, ( short )0xFD00, ( short )0xFD60, ( short )0xFD70, ( short )0xFDA8, ( short )0xFF00, ( short )0x00A0,
( short )0x0170, ( short )0x0210, ( short )0x02D8, ( short )0x0310, ( short )0x0218, ( short )0x00A0, ( short )0xFFA0, ( short )0xFDF0,
( short )0xFBD8, ( short )0xFB08, ( short )0xF9C0, ( short )0xF830, ( short )0xF8D8, ( short )0xFCC0, ( short )0x0038, ( short )0x01A0,
( short )0x0380, ( short )0x0A18, ( short )0x0F50, ( short )0x0DB0, ( short )0x0C30, ( short )0x0E18, ( short )0x0CA8, ( short )0x0570,
( short )0xFF98, ( short )0xFE38, ( short )0xFBA0, ( short )0xF700, ( short )0xF5D0, ( short )0xF7C8, ( short )0xF9A8, ( short )0xFB48,
( short )0xFBB0, ( short )0xFC78, ( short )0xFF00, ( short )0xFE98, ( short )0xFB20, ( short )0xFA48, ( short )0xFAC0, ( short )0xF8C8,
( short )0xF6E0, ( short )0xF9C0, ( short )0xFE08, ( short )0xFF80, ( short )0x0428, ( short )0x0B70, ( short )0x0E18, ( short )0x0D38,
( short )0x0D38, ( short )0x0C28, ( short )0x01D0, ( short )0xF578, ( short )0xF108, ( short )0xFB50, ( short )0x0498, ( short )0x0428,
( short )0x0CE8, ( short )0x2190, ( short )0x29F0, ( short )0x22E0, ( short )0x1F68, ( short )0x2050, ( short )0x1810, ( short )0x0710,
( short )0xFA98, ( short )0xF438, ( short )0xEE68, ( short )0xE950, ( short )0xEBC8, ( short )0xF538, ( short )0xFEB8, ( short )0x0240,
( short )0x0460, ( short )0x09D0, ( short )0x0978, ( short )0xFFF8, ( short )0xF810, ( short )0xF190, ( short )0xE8D0, ( short )0xE290,
( short )0xDF60, ( short )0xDFF0, ( short )0xE668, ( short )0xEC20, ( short )0xF138, ( short )0xFAC0, ( short )0x04F0, ( short )0x08D0,
( short )0x08C8, ( short )0x0B18, ( short )0x09F8, ( short )0x0230, ( short )0xFA38, ( short )0xFA68, ( short )0xFC78, ( short )0xF9B8,
( short )0xF850, ( short )0xFEA8, ( short )0x05B8, ( short )0x0690, ( short )0x02E8, ( short )0x0268, ( short )0x0498, ( short )0xFCB0,
( short )0xF018, ( short )0xEDF8, ( short )0x0090, ( short )0x0F48, ( short )0x0C70, ( short )0x1278, ( short )0x27B8, ( short )0x2EA0,
( short )0x21F8, ( short )0x1920, ( short )0x1918, ( short )0x1530, ( short )0x0638, ( short )0xF858, ( short )0xF720, ( short )0xF9F8,
( short )0xF600, ( short )0xF850, ( short )0x0590, ( short )0x0EE0, ( short )0x1000, ( short )0x10D8, ( short )0x1460, ( short )0x10F8,
( short )0x0500, ( short )0xFBC0, ( short )0xF7A8, ( short )0xF250, ( short )0xEC00, ( short )0xEB30, ( short )0xF1C8, ( short )0xF920,
( short )0xFC90, ( short )0x0190, ( short )0x0A60, ( short )0x0E80, ( short )0x0DB0, ( short )0x0AD8, ( short )0x0690, ( short )0x0168,
( short )0xFF20, ( short )0xFBD0, ( short )0xF6F8, ( short )0xF660, ( short )0xF680, ( short )0xF5B0, ( short )0xF7C0, ( short )0xF120,
( short )0xEA90, ( short )0xF030, ( short )0xEC18, ( short )0xE190, ( short )0xE558, ( short )0xFF20, ( short )0x1090, ( short )0x0C50,
( short )0x1248, ( short )0x2788, ( short )0x2AD0, ( short )0x1628, ( short )0x08F0, ( short )0x0BA8, ( short )0x0538, ( short )0xEF48,
( short )0xE410, ( short )0xEB10, ( short )0xEF68, ( short )0xEA28, ( short )0xEC40, ( short )0xFC18, ( short )0x08A8, ( short )0x0818,
( short )0x0778, ( short )0x0858, ( short )0x02F8, ( short )0xF8E8, ( short )0xF1F0, ( short )0xEF40, ( short )0xECD0, ( short )0xE958,
( short )0xEA70, ( short )0xF260, ( short )0xFAF0, ( short )0xFFA0, ( short )0x04A0, ( short )0x0CF8, ( short )0x10F8, ( short )0x0EA0,
( short )0x0D48, ( short )0x0BE8, ( short )0x05E0, ( short )0x03B0, ( short )0x0358, ( short )0xFF18, ( short )0xFB40, ( short )0xF9B0,
( short )0xF9C0, ( short )0xF7C0, ( short )0xEE90, ( short )0xEAA0, ( short )0xEE00, ( short )0xE888, ( short )0xE200, ( short )0xEF00,
( short )0x0948, ( short )0x1400, ( short )0x1270, ( short )0x1D88, ( short )0x2CD8, ( short )0x2488, ( short )0x0DA8, ( short )0x04B8,
( short )0x0548, ( short )0xF7B0, ( short )0xE3F0, ( short )0xE268, ( short )0xEFF8, ( short )0xF5A0, ( short )0xF320, ( short )0xFC68,
( short )0x0BF0, ( short )0x0FA0, ( short )0x0A50, ( short )0x01F8, ( short )0xFE60, ( short )0xFC48, ( short )0xF340, ( short )0xEB28,
( short )0xED58, ( short )0xF3C0, ( short )0xF5B8, ( short )0xF738, ( short )0x00F8, ( short )0x0C70, ( short )0x0E90, ( short )0x0DE8,
( short )0x1190, ( short )0x12B0, ( short )0x1058, ( short )0x0B98, ( short )0x0638, ( short )0x0868, ( short )0x0998, ( short )0x02B0,
( short )0xFE50, ( short )0x0120, ( short )0x02A0, ( short )0xFC90, ( short )0xF810, ( short )0xF9D0, ( short )0xF818, ( short )0xF290,
( short )0xF240, ( short )0xF6D0, ( short )0x0A48, ( short )0x1AD8, ( short )0x1840, ( short )0x1C18, ( short )0x2B18, ( short )0x29F0,
( short )0x1608, ( short )0x08B8, ( short )0x0778, ( short )0x0128, ( short )0xF118, ( short )0xE868, ( short )0xEDA0, ( short )0xF310,
( short )0xF248, ( short )0xF558, ( short )0x0058, ( short )0x0970, ( short )0x0688, ( short )0x0108, ( short )0xFD08, ( short )0xF988,
( short )0xF558, ( short )0xF0A0, ( short )0xF0B0, ( short )0xF540, ( short )0xF6E8, ( short )0xFCA0, ( short )0x0758, ( short )0x0CD0,
( short )0x0F60, ( short )0x1338, ( short )0x1458, ( short )0x1278, ( short )0x0FD0, ( short )0x0CA8, ( short )0x0D50, ( short )0x0D10,
( short )0x0798, ( short )0x0398, ( short )0x0428, ( short )0x04F0, ( short )0x0278, ( short )0xFF98, ( short )0x0178, ( short )0x0088,
( short )0xFB08, ( short )0xF660, ( short )0xF1A8, ( short )0xEF18, ( short )0xF9E8, ( short )0x0C00, ( short )0x11C8, ( short )0x1260,
( short )0x1B60, ( short )0x21B0, ( short )0x18E0, ( short )0x0B08, ( short )0x04C8, ( short )0x0078, ( short )0xF730, ( short )0xEF60,
( short )0xEB18, ( short )0xEC10, ( short )0xF290, ( short )0xF800, ( short )0xFB60, ( short )0xFF60, ( short )0x0080, ( short )0xFFA8,
( short )0xFB08, ( short )0xF1A8, ( short )0xED10, ( short )0xEFF0, ( short )0xEED0, ( short )0xEB10, ( short )0xEFE8, ( short )0xF8F0,
( short )0xFDE0, ( short )0x0298, ( short )0x0528, ( short )0x0598, ( short )0x0928, ( short )0x0A30, ( short )0x0670, ( short )0x08E8,
( short )0x0BC0, ( short )0x0698, ( short )0x0210, ( short )0x0390, ( short )0x0560, ( short )0x0288, ( short )0xF910, ( short )0xF468,
( short )0xF560, ( short )0xF3E0, ( short )0xEE10, ( short )0xE8B0, ( short )0xE508, ( short )0xEED0, ( short )0x03E0, ( short )0x0638,
( short )0xFFA8, ( short )0x0BB8, ( short )0x2078, ( short )0x1FA8, ( short )0x0EF0, ( short )0x0648, ( short )0x05C8, ( short )0xFF18,
( short )0xF588, ( short )0xEE20, ( short )0xED88, ( short )0xF5A0, ( short )0xFBA8, ( short )0xFBC0, ( short )0xFA98, ( short )0xFA20,
( short )0xF7D8, ( short )0xF2D0, ( short )0xEF48, ( short )0xE998, ( short )0xE378, ( short )0xE530, ( short )0xE868, ( short )0xE890,
( short )0xEDD0, ( short )0xF798, ( short )0xFBC0, ( short )0xFD20, ( short )0x0178, ( short )0x0490, ( short )0x04A0, ( short )0x0758,
( short )0x0858, ( short )0x0490, ( short )0x04F8, ( short )0x0858, ( short )0x06F0, ( short )0x05F8, ( short )0x0450, ( short )0x0098,
( short )0xFE60, ( short )0xFDA0, ( short )0xF9E0, ( short )0xF358, ( short )0xEDC0, ( short )0xF308, ( short )0xFFE0, ( short )0x0018,
( short )0xFB80, ( short )0x0948, ( short )0x1DB8, ( short )0x1D08, ( short )0x0F88, ( short )0x0B48, ( short )0x0C50, ( short )0x09C0,
( short )0xFF78, ( short )0xF1A0, ( short )0xEF28, ( short )0xF6B8, ( short )0xF9F0, ( short )0xF6F0, ( short )0xF688, ( short )0xF9E0,
( short )0xF9C0, ( short )0xF4C8, ( short )0xEBD8, ( short )0xE7E8, ( short )0xEBE0, ( short )0xE8C8, ( short )0xE100, ( short )0xE518,
( short )0xF0B8, ( short )0xF728, ( short )0xF770, ( short )0xF878, ( short )0xFF58, ( short )0x06B0, ( short )0x0430, ( short )0x0060,
( short )0x0390, ( short )0x0A18, ( short )0x0B98, ( short )0x06C8, ( short )0x0710, ( short )0x0CF0, ( short )0x08D0, ( short )0x01F8,
( short )0x0280, ( short )0x0238, ( short )0xFD78, ( short )0xF868, ( short )0xF198, ( short )0xF670, ( short )0x0930, ( short )0x0A78,
( short )0xFB38, ( short )0x04F0, ( short )0x1EB8, ( short )0x1E98, ( short )0x0F68, ( short )0x0EC8, ( short )0x1548, ( short )0x1480,
( short )0x0C60, ( short )0x00B0, ( short )0xFEF8, ( short )0x0830, ( short )0x0838, ( short )0x0160, ( short )0x0380, ( short )0x07E8,
( short )0x0270, ( short )0xFBA0, ( short )0xF9C0, ( short )0xF450, ( short )0xEE08, ( short )0xED08, ( short )0xEE10, ( short )0xEF20,
( short )0xF1C0, ( short )0xF800, ( short )0xFE70, ( short )0x00B0, ( short )0x02D8, ( short )0x07C8, ( short )0x09F0, ( short )0x09A8,
( short )0x0A60, ( short )0x0B28, ( short )0x0C80, ( short )0x0D58, ( short )0x0BD0, ( short )0x0A48, ( short )0x0900, ( short )0x0768,
( short )0x03D0, ( short )0x00E0, ( short )0xFFF8, ( short )0xFBD8, ( short )0xF5E8, ( short )0xFE18, ( short )0x0FE8, ( short )0x1060,
( short )0x05C8, ( short )0x1078, ( short )0x2638, ( short )0x2580, ( short )0x1740, ( short )0x14E8, ( short )0x19D0, ( short )0x17D8,
( short )0x0E10, ( short )0x0270, ( short )0x0120, ( short )0x0900, ( short )0x0870, ( short )0x0290, ( short )0x03A0, ( short )0x0600,
( short )0x0100, ( short )0xFE28, ( short )0xFF28, ( short )0xF838, ( short )0xF0B8, ( short )0xF238, ( short )0xF530, ( short )0xF440,
( short )0xF440, ( short )0xFA38, ( short )0x0198, ( short )0x03A8, ( short )0x03D0, ( short )0x0780, ( short )0x0AB8, ( short )0x0B58,
( short )0x0B10, ( short )0x0AD8, ( short )0x0A08, ( short )0x0878, ( short )0x07C8, ( short )0x0648, ( short )0x01A0, ( short )0xFF48,
( short )0xFE58, ( short )0xFA68, ( short )0xF7D0, ( short )0xF758, ( short )0xF470, ( short )0xF5B0, ( short )0x02A8, ( short )0x0A58,
( short )0x0448, ( short )0x07C8, ( short )0x1708, ( short )0x1970, ( short )0x0EC8, ( short )0x0A40, ( short )0x0CD0, ( short )0x0D28,
( short )0x0838, ( short )0x0010, ( short )0xFAE0, ( short )0xFCB0, ( short )0xFEB8, ( short )0xFCE8, ( short )0xFBA8, ( short )0xFD10,
( short )0xFBC8, ( short )0xF910, ( short )0xF960, ( short )0xF830, ( short )0xF4D8, ( short )0xF500, ( short )0xF860, ( short )0xF9F0,
( short )0xFB58, ( short )0xFE48, ( short )0x0050, ( short )0x0418, ( short )0x0910, ( short )0x0940, ( short )0x0830, ( short )0x0AC8,
( short )0x0C88, ( short )0x0A50, ( short )0x07C0, ( short )0x0700, ( short )0x0590, ( short )0x0268, ( short )0xFFF0, ( short )0xFBA8,
( short )0xF720, ( short )0xF698, ( short )0xF2E0, ( short )0xEB68, ( short )0xEDA0, ( short )0xFC00, ( short )0x0358, ( short )0xFF30,
( short )0x0398, ( short )0x1220, ( short )0x1860, ( short )0x1368, ( short )0x10C0, ( short )0x12F0, ( short )0x12A0, ( short )0x0E08,
( short )0x0780, ( short )0x0010, ( short )0xFAD8, ( short )0xF990, ( short )0xF7E0, ( short )0xF278, ( short )0xEE10, ( short )0xEB98,
( short )0xE7A0, ( short )0xE6F8, ( short )0xEA30, ( short )0xE980, ( short )0xE420, ( short )0xE440, ( short )0xEBA8, ( short )0xEF98,
( short )0xEF68, ( short )0xF288, ( short )0xF7A8, ( short )0xFC90, ( short )0x01F8, ( short )0x0528, ( short )0x0630, ( short )0x08E8,
( short )0x0C98, ( short )0x0D50, ( short )0x0B98, ( short )0x0920, ( short )0x0678, ( short )0x03F0, ( short )0x0260, ( short )0xFE00,
( short )0xF810, ( short )0xF4B8, ( short )0xF0C0, ( short )0xEB68, ( short )0xEF58, ( short )0xFAE8, ( short )0xFDE0, ( short )0xF680,
( short )0xF910, ( short )0x06E0, ( short )0x0C20, ( short )0x05D8, ( short )0x0408, ( short )0x05C8, ( short )0x0450, ( short )0x02D0,
( short )0x0128, ( short )0xFB78, ( short )0xF668, ( short )0xF430, ( short )0xF150, ( short )0xED90, ( short )0xE870, ( short )0xE448,
( short )0xE2E0, ( short )0xE048, ( short )0xDDD0, ( short )0xDF08, ( short )0xE0E0, ( short )0xE098, ( short )0xE258, ( short )0xE520,
( short )0xE6A8, ( short )0xEA28, ( short )0xEF88, ( short )0xF2A8, ( short )0xF548, ( short )0xFBA8, ( short )0x01C8, ( short )0x03F8,
( short )0x0748, ( short )0x0C88, ( short )0x0E98, ( short )0x0DB8, ( short )0x0D98, ( short )0x0D50, ( short )0x0B68, ( short )0x0970,
( short )0x06C0, ( short )0x0238, ( short )0xFE18, ( short )0xFB08, ( short )0xF820, ( short )0xF780, ( short )0xF970, ( short )0xF9B0,
( short )0xF880, ( short )0xFA28, ( short )0x0028, ( short )0x0698, ( short )0x0948, ( short )0x08D0, ( short )0x09E0, ( short )0x0DD0,
( short )0x1010, ( short )0x0D40, ( short )0x0958, ( short )0x0728, ( short )0x0308, ( short )0xFDA0, ( short )0xF9F8, ( short )0xF418,
( short )0xEC98, ( short )0xE8B8, ( short )0xE618, ( short )0xE200, ( short )0xDED0, ( short )0xDF48, ( short )0xE100, ( short )0xE180,
( short )0xE160, ( short )0xE3C8, ( short )0xE898, ( short )0xEDD8, ( short )0xF250, ( short )0xF558, ( short )0xFB00, ( short )0x02F8,
( short )0x07B0, ( short )0x0B80, ( short )0x1108, ( short )0x1518, ( short )0x1660, ( short )0x1770, ( short )0x1870, ( short )0x16F8,
( short )0x1300, ( short )0x0F78, ( short )0x0FC0, ( short )0x1070, ( short )0x0CE8, ( short )0x0AF8, ( short )0x0BD8, ( short )0x0D28,
( short )0x10A8, ( short )0x1370, ( short )0x10A0, ( short )0x1040, ( short )0x1518, ( short )0x1740, ( short )0x1550, ( short )0x1398,
( short )0x10E0, ( short )0x0AC8, ( short )0x0640, ( short )0x0348, ( short )0xFD18, ( short )0xF658, ( short )0xF1D8, ( short )0xEC20,
( short )0xE760, ( short )0xE550, ( short )0xE4B8, ( short )0xE418, ( short )0xE438, ( short )0xE508, ( short )0xE738, ( short )0xEB18,
( short )0xF0C8, ( short )0xF618, ( short )0xF988, ( short )0xFEC8, ( short )0x0518, ( short )0x09D8, ( short )0x1118, ( short )0x17F0,
( short )0x1BB0, ( short )0x1E28, ( short )0x2120, ( short )0x23D8, ( short )0x2638, ( short )0x2418, ( short )0x2080, ( short )0x1D30,
( short )0x1CE8, ( short )0x1D98, ( short )0x1CA8, ( short )0x1AD8, ( short )0x1960, ( short )0x17F8, ( short )0x1A40, ( short )0x1CF8,
( short )0x1D38, ( short )0x1C30, ( short )0x1A68, ( short )0x1860, ( short )0x1480, ( short )0x1020, ( short )0x0B68, ( short )0x03E8,
( short )0xFBA8, ( short )0xF508, ( short )0xEE40, ( short )0xE820, ( short )0xE338, ( short )0xDE88, ( short )0xDA30, ( short )0xD7D0,
( short )0xD728, ( short )0xD7D8, ( short )0xD998, ( short )0xDC10, ( short )0xDFB0, ( short )0xE470, ( short )0xE948, ( short )0xEF98,
( short )0xF5F0, ( short )0xFC38, ( short )0x0228, ( short )0x0798, ( short )0x0D98, ( short )0x1320, ( short )0x1760, ( short )0x1A70,
( short )0x1BE0, ( short )0x1CC0, ( short )0x1D98, ( short )0x1A88, ( short )0x1658, ( short )0x12A0, ( short )0x1180, ( short )0x10A8,
( short )0x0ED0, ( short )0x0CC8, ( short )0x0AD8, ( short )0x0920, ( short )0x0B70, ( short )0x0E30, ( short )0x0EE8, ( short )0x0D80,
( short )0x0BE0, ( short )0x0AC0, ( short )0x09B8, ( short )0x0890, ( short )0x0690, ( short )0x01F8, ( short )0xFD30, ( short )0xF9F0,
( short )0xF5B0, ( short )0xF188, ( short )0xEE38, ( short )0xE9E8, ( short )0xE5E8, ( short )0xE3E0, ( short )0xE4A0, ( short )0xE608,
( short )0xE738, ( short )0xE858, ( short )0xE980, ( short )0xEC20, ( short )0xF030, ( short )0xF450, ( short )0xF878, ( short )0xFC68,
( short )0xFF68, ( short )0x03C8, ( short )0x08B8, ( short )0x0D00, ( short )0x1038, ( short )0x12D8, ( short )0x1490, ( short )0x1648,
( short )0x16B8, ( short )0x1468, ( short )0x1160, ( short )0x0FA8, ( short )0x1038, ( short )0x1058, ( short )0x0F88, ( short )0x0E50,
( short )0x0CC8, ( short )0x0CC0, ( short )0x0FC0, ( short )0x1220, ( short )0x12A0, ( short )0x10F8, ( short )0x0F20, ( short )0x0D28,
( short )0x0C78, ( short )0x0BB8, ( short )0x08D0, ( short )0x01C8, ( short )0xFB38, ( short )0xF660, ( short )0xF330, ( short )0xF078,
( short )0xEC28, ( short )0xE6C8, ( short )0xE2C0, ( short )0xE050, ( short )0xDFC8, ( short )0xE038, ( short )0xE160, ( short )0xE300,
( short )0xE568, ( short )0xE6B8, ( short )0xE9A0, ( short )0xED50, ( short )0xF238, ( short )0xF6D8, ( short )0xFB08, ( short )0xFF10,
( short )0x02E8, ( short )0x06A0, ( short )0x0AC0, ( short )0x0DC8, ( short )0x1010, ( short )0x1168, ( short )0x1018, ( short )0x0E90,
( short )0x0BF8, ( short )0x0B08, ( short )0x0A50, ( short )0x09F0, ( short )0x0960, ( short )0x0888, ( short )0x0808, ( short )0x09C8,
( short )0x0BA8, ( short )0x0EE8, ( short )0x1070, ( short )0x10D0, ( short )0x0F58, ( short )0x0D60, ( short )0x0BA0, ( short )0x0A60,
( short )0x08F0, ( short )0x0608, ( short )0xFFB0, ( short )0xF938, ( short )0xF360, ( short )0xF030, ( short )0xEE20, ( short )0xEB70,
( short )0xE7A8, ( short )0xE410, ( short )0xE140, ( short )0xDFC8, ( short )0xDFF8, ( short )0xE1F0, ( short )0xE448, ( short )0xE6D0,
( short )0xE780, ( short )0xE9E8, ( short )0xECF0, ( short )0xF248, ( short )0xF730, ( short )0xFBC0, ( short )0xFF80, ( short )0x0310,
( short )0x0670, ( short )0x0A98, ( short )0x0D88, ( short )0x0FD8, ( short )0x10C0, ( short )0x0EB0, ( short )0x0C48, ( short )0x08B8,
( short )0x0998, ( short )0x0AC0, ( short )0x0C68, ( short )0x0B78, ( short )0x09C8, ( short )0x0838, ( short )0x08F8, ( short )0x0A80,
( short )0x0CA0, ( short )0x0E10, ( short )0x0E48, ( short )0x0D58, ( short )0x0A28, ( short )0x0750, ( short )0x04F0, ( short )0x0228,
( short )0xFEE8, ( short )0xFA80, ( short )0xF468, ( short )0xEED0, ( short )0xEAE0, ( short )0xE8B8, ( short )0xE718, ( short )0xE5B0,
( short )0xE4A8, ( short )0xE410, ( short )0xE480, ( short )0xE548, ( short )0xE738, ( short )0xE9B0, ( short )0xED80, ( short )0xF0B8,
( short )0xF480, ( short )0xF7B0, ( short )0xFB70, ( short )0xFED0, ( short )0x0328, ( short )0x0720, ( short )0x0A98, ( short )0x0E00,
( short )0x10F8, ( short )0x12E0, ( short )0x12A8, ( short )0x11B0, ( short )0x0F58, ( short )0x0F38, ( short )0x0E88, ( short )0x0F08,
( short )0x0FC0, ( short )0x0FF0, ( short )0x10B8, ( short )0x1138, ( short )0x1198, ( short )0x13D0, ( short )0x1638, ( short )0x17E8,
( short )0x1758, ( short )0x1628, ( short )0x1460, ( short )0x10E8, ( short )0x0CA0, ( short )0x0848, ( short )0x0280, ( short )0xFC90,
( short )0xF700, ( short )0xF0F8, ( short )0xEB18, ( short )0xE638, ( short )0xE1B8, ( short )0xDE78, ( short )0xDC58, ( short )0xDBB8,
( short )0xDC28, ( short )0xDDB0, ( short )0xE030, ( short )0xE330, ( short )0xE6F0, ( short )0xEC20, ( short )0xF210, ( short )0xF7C0,
( short )0xFCE0, ( short )0x0150, ( short )0x0570, ( short )0x08F0, ( short )0x0C70, ( short )0x0F50, ( short )0x12B8, ( short )0x1560,
( short )0x16E0, ( short )0x1630, ( short )0x14E8, ( short )0x1298, ( short )0x11B8, ( short )0x1170, ( short )0x11B8, ( short )0x11C0,
( short )0x0FE8, ( short )0x0E58, ( short )0x0CB8, ( short )0x0C50, ( short )0x0D68, ( short )0x0E98, ( short )0x0E30, ( short )0x0C28,
( short )0x0A10, ( short )0x06D8, ( short )0x02E0, ( short )0xFEA0, ( short )0xFA18, ( short )0xF4E8, ( short )0xF018, ( short )0xEB68,
( short )0xE6E8, ( short )0xE310, ( short )0xDFC8, ( short )0xDD38, ( short )0xDBF8, ( short )0xDC38, ( short )0xDDD0, ( short )0xE070,
( short )0xE390, ( short )0xE760, ( short )0xEB88, ( short )0xEF20, ( short )0xF378, ( short )0xF830, ( short )0xFCE0, ( short )0x00F8,
( short )0x0480, ( short )0x0768, ( short )0x0968, ( short )0x0AE0, ( short )0x0BB8, ( short )0x0C10, ( short )0x0BB0, ( short )0x0A78,
( short )0x08E0, ( short )0x06E8, ( short )0x0540, ( short )0x0870, ( short )0x0BE0, ( short )0x0ED0, ( short )0x0E40, ( short )0x0D10,
( short )0x0CC8, ( short )0x0E28, ( short )0x0FA0, ( short )0x0FB0, ( short )0x0F18, ( short )0x0DD0, ( short )0x0BC8, ( short )0x08E8,
( short )0x0628, ( short )0x0300, ( short )0xFF18, ( short )0xFB40, ( short )0xF780, ( short )0xF388, ( short )0xF028, ( short )0xED80,
( short )0xEB18, ( short )0xE968, ( short )0xE8C0, ( short )0xE738, ( short )0xE658, ( short )0xE698, ( short )0xE888, ( short )0xEB38,
( short )0xEDA0, ( short )0xF178, ( short )0xF5B8, ( short )0xFA28, ( short )0xFEA8, ( short )0x0300, ( short )0x06C8, ( short )0x0960,
( short )0x0B70, ( short )0x0CE0, ( short )0x0D70, ( short )0x0D50, ( short )0x0C60, ( short )0x0890, ( short )0x0418, ( short )0x0028,
( short )0x01D0, ( short )0x03F8, ( short )0x05A8, ( short )0x0700, ( short )0x0808, ( short )0x09A0, ( short )0x0B18, ( short )0x0CC8,
( short )0x0D90, ( short )0x0E68, ( short )0x0EC0, ( short )0x0E30, ( short )0x0C28, ( short )0x09D8, ( short )0x0730, ( short )0x0308,
( short )0xFED8, ( short )0xFAC0, ( short )0xF598, ( short )0xF0D8, ( short )0xECE0, ( short )0xEAA8, ( short )0xE948, ( short )0xE8D0,
( short )0xE850, ( short )0xE888, ( short )0xE910, ( short )0xEAD0, ( short )0xED68, ( short )0xF018, ( short )0xF350, ( short )0xF6B8,
( short )0xFAE0, ( short )0xFF00, ( short )0x02D8, ( short )0x05E8, ( short )0x0830, ( short )0x09F8, ( short )0x0B08, ( short )0x0B80,
( short )0x0B60, ( short )0x0988, ( short )0x0648, ( short )0x02D0, ( short )0x0150, ( short )0x01E8, ( short )0x0270, ( short )0x03E0,
( short )0x0538, ( short )0x0658, ( short )0x0918, ( short )0x0C00, ( short )0x0E88, ( short )0x10B8, ( short )0x12A0, ( short )0x13E0,
( short )0x1488, ( short )0x1448, ( short )0x1368, ( short )0x1120, ( short )0x0DD0, ( short )0x0A40, ( short )0x0608, ( short )0x0148,
( short )0xFC80, ( short )0xF860, ( short )0xF4D8, ( short )0xF1C0, ( short )0xF008, ( short )0xEF38, ( short )0xEE78, ( short )0xEE98,
( short )0xEF90, ( short )0xF170, ( short )0xF390, ( short )0xF5C0, ( short )0xF888, ( short )0xFB48, ( short )0xFDF0, ( short )0x0078,
( short )0x03D0, ( short )0x06C8, ( short )0x08F8, ( short )0x0AA0, ( short )0x0BC8, ( short )0x0C48, ( short )0x0B30, ( short )0x0978,
( short )0x06A8, ( short )0x0530, ( short )0x03F0, ( short )0x0438, ( short )0x03C0, ( short )0x0350, ( short )0x0360, ( short )0x04E8,
( short )0x0698, ( short )0x07D0, ( short )0x08D0, ( short )0x0998, ( short )0x0A70, ( short )0x0B48, ( short )0x0B70, ( short )0x0AD0,
( short )0x09C0, ( short )0x0890, ( short )0x0730, ( short )0x0588, ( short )0x0358, ( short )0x0140, ( short )0xFF58, ( short )0xFD40,
( short )0xFB68, ( short )0xF9E8, ( short )0xF828, ( short )0xF6D0, ( short )0xF608, ( short )0xF5D8, ( short )0xF610, ( short )0xF668,
( short )0xF778, ( short )0xF8E8, ( short )0xFA48, ( short )0xFCC8, ( short )0xFF50, ( short )0x01C8, ( short )0x0428, ( short )0x0640,
( short )0x07D0, ( short )0x09D0, ( short )0x0B40, ( short )0x0BF8, ( short )0x0C30, ( short )0x0C08, ( short )0x0B08, ( short )0x0988,
( short )0x07C0, ( short )0x0670, ( short )0x0608, ( short )0x0590, ( short )0x0588, ( short )0x05B0, ( short )0x05E0, ( short )0x06B8,
( short )0x0748, ( short )0x0758, ( short )0x0700, ( short )0x06A8, ( short )0x0620, ( short )0x05D8, ( short )0x0590, ( short )0x0528,
( short )0x03A8, ( short )0x0240, ( short )0x0108, ( short )0xFF38, ( short )0xFD50, ( short )0xFBA0, ( short )0xFA38, ( short )0xF920,
( short )0xF860, ( short )0xF6E8, ( short )0xF640, ( short )0xF628, ( short )0xF680, ( short )0xF720, ( short )0xF800, ( short )0xF8E0,
( short )0xF9A0, ( short )0xFA78, ( short )0xFB88, ( short )0xFD20, ( short )0xFEA0, ( short )0x0008, ( short )0x0110, ( short )0x0200,
( short )0x0360, ( short )0x04E0, ( short )0x0608, ( short )0x0738, ( short )0x0838, ( short )0x08D8, ( short )0x0828, ( short )0x0738,
( short )0x0600, ( short )0x04A8, ( short )0x02E0, ( short )0x0130, ( short )0xFFA0, ( short )0xFF48, ( short )0xFF10, ( short )0xFEF0,
( short )0xFF30, ( short )0xFFD0, ( short )0x0090, ( short )0x0090, ( short )0x0070, ( short )0x0060, ( short )0xFFE8, ( short )0xFF50,
( short )0xFEB8, ( short )0xFE98, ( short )0xFE88, ( short )0xFE80, ( short )0xFE58, ( short )0xFE50, ( short )0xFE58, ( short )0xFDB0,
( short )0xFD08, ( short )0xFC80, ( short )0xFAF8, ( short )0xF988, ( short )0xF860, ( short )0xF798, ( short )0xF720, ( short )0xF6E8,
( short )0xF728, ( short )0xF7C0, ( short )0xF8A8, ( short )0xF8F8, ( short )0xF960, ( short )0xFA18, ( short )0xFAC0, ( short )0xFB58,
( short )0xFC18, ( short )0xFCE0, ( short )0xFDA0, ( short )0xFE20, ( short )0xFE88, ( short )0xFEF8, ( short )0xFEF0, ( short )0xFEC8,
( short )0xFEA8, ( short )0xFDE0, ( short )0xFD10, ( short )0xFC70, ( short )0xFBA8, ( short )0xFB10, ( short )0xFAB8, ( short )0xFAA0,
( short )0xFAD0, ( short )0xFB18, ( short )0xFA90, ( short )0xFA18, ( short )0xFA10, ( short )0xFA80, ( short )0xFB10, ( short )0xFB88,
( short )0xFC90, ( short )0xFDB8, ( short )0xFEB8, ( short )0xFF80, ( short )0x0058, ( short )0x0138, ( short )0x0118, ( short )0x00C8,
( short )0x00C0, ( short )0xFF98, ( short )0xFE30, ( short )0xFD38, ( short )0xFC68, ( short )0xFB78, ( short )0xFAB8, ( short )0xFAE8,
( short )0xFB78, ( short )0xFBD0, ( short )0xFBE8, ( short )0xFC18, ( short )0xFC98, ( short )0xFD28, ( short )0xFD48, ( short )0xFD68,
( short )0xFD68, ( short )0xFD90, ( short )0xFDB8, ( short )0xFD90, ( short )0xFD68, ( short )0xFD78, ( short )0xFCA0, ( short )0xFB70,
( short )0xFAD0, ( short )0xF9F0, ( short )0xF870, ( short )0xF748, ( short )0xF748, ( short )0xF770, ( short )0xF748, ( short )0xF720,
( short )0xF7A8, ( short )0xF878, ( short )0xF930, ( short )0xF998, ( short )0xFA38, ( short )0xFC10, ( short )0xFDA0, ( short )0xFE70,
( short )0x0030, ( short )0x0248, ( short )0x03A0, ( short )0x0568, ( short )0x0738, ( short )0x0870, ( short )0x0960, ( short )0x0A10,
( short )0x0A40, ( short )0x0A28, ( short )0x09B8, ( short )0x08E8, ( short )0x07E8, ( short )0x06E0, ( short )0x0588, ( short )0x0430,
( short )0x0300, ( short )0x0260, ( short )0x01D0, ( short )0x0118, ( short )0xFFB0, ( short )0xFE98, ( short )0xFE18, ( short )0xFDA0,
( short )0xFD08, ( short )0xFCB8, ( short )0xFCF8, ( short )0xFD60, ( short )0xFD90, ( short )0xFD90, ( short )0xFDD8, ( short )0xFE50,
( short )0xFDA0, ( short )0xFCE0, ( short )0xFCC0, ( short )0xFCE8, ( short )0xFCB0, ( short )0xFC60, ( short )0xFC70, ( short )0xFCB8,
( short )0xFCE0, ( short )0xFD40, ( short )0xFDD8, ( short )0xFE68, ( short )0xFF78, ( short )0x0068, ( short )0x0108, ( short )0x0278,
( short )0x03A0, ( short )0x0420, ( short )0x0590, ( short )0x0708, ( short )0x07B8, ( short )0x07D8, ( short )0x0808, ( short )0x0838,
( short )0x07D8, ( short )0x06E8, ( short )0x0600, ( short )0x05B0, ( short )0x0518, ( short )0x0410, ( short )0x02A0, ( short )0x0198,
( short )0x00D0, ( short )0x00C8, ( short )0x00B0, ( short )0x0068, ( short )0x00C0, ( short )0x0150, ( short )0x0180, ( short )0x0220,
( short )0x02D8, ( short )0x0340, ( short )0x0360, ( short )0x0380, ( short )0x0380, ( short )0x0338, ( short )0x02C8, ( short )0x02B8,
( short )0x0280, ( short )0x0200, ( short )0x0100, ( short )0x0098, ( short )0x0080, ( short )0x0020, ( short )0xFFF0, ( short )0x0000,
( short )0x0020, ( short )0x0098, ( short )0x0120, ( short )0x0170, ( short )0x0230, ( short )0x02F0, ( short )0x0350, ( short )0x0480,
( short )0x05B8, ( short )0x0650, ( short )0x06A8, ( short )0x0738, ( short )0x0798, ( short )0x07B0, ( short )0x07C0, ( short )0x0798,
( short )0x0668, ( short )0x0598, ( short )0x0530, ( short )0x04C8, ( short )0x0410, ( short )0x0350, ( short )0x0278, ( short )0x01D8,
( short )0x0148, ( short )0x0080, ( short )0x0000, ( short )0xFFC0, ( short )0xFFD8, ( short )0xFFA8, ( short )0xFF60, ( short )0xFF80,
( short )0x0018, ( short )0x0070, ( short )0xFFE0, ( short )0xFF88, ( short )0xFFC0, ( short )0xFF38, ( short )0xFE98, ( short )0xFE50,
( short )0xFE10, ( short )0xFDD8, ( short )0xFD90, ( short )0xFD30, ( short )0xFDB8, ( short )0xFE68, ( short )0xFE70, ( short )0xFE60,
( short )0xFE70, ( short )0xFED0, ( short )0xFF90, ( short )0xFFE0, ( short )0xFFF0, ( short )0x00A8, ( short )0x0168, ( short )0x01D0,
( short )0x01F8, ( short )0x0210, ( short )0x0278, ( short )0x0268, ( short )0x0208, ( short )0x0220, ( short )0x01F8, ( short )0x0198,
( short )0x0158, ( short )0x0100, ( short )0x00C0, ( short )0x00A0, ( short )0x0018, ( short )0xFF98, ( short )0xFF28, ( short )0xFEC0,
( short )0xFE80, ( short )0xFE60, ( short )0xFD88, ( short )0xFCF0, ( short )0xFCC8, ( short )0xFC70, ( short )0xFC10, ( short )0xFBC8,
( short )0xFBB0, ( short )0xFBE8, ( short )0xFBE8, ( short )0xFB80, ( short )0xFB88, ( short )0xFB40, ( short )0xFB18, ( short )0xFB20,
( short )0xFAB8, ( short )0xFA50, ( short )0xFA50, ( short )0xFAB8, ( short )0xFAF8, ( short )0xFB18, ( short )0xFBB0, ( short )0xFC88,
( short )0xFD10, ( short )0xFD40, ( short )0xFD98, ( short )0xFE38, ( short )0xFEE0, ( short )0xFEF8, ( short )0xFEF0, ( short )0xFF18,
( short )0xFF18, ( short )0xFF18, ( short )0xFF68, ( short )0xFF98, ( short )0xFF98, ( short )0xFFD0, ( short )0xFFF8, ( short )0x0048,
( short )0x0038, ( short )0x0008, ( short )0x0008, ( short )0xFFE0, ( short )0xFFB0, ( short )0xFFB8, ( short )0xFED0, ( short )0xFE18,
( short )0xFE18, ( short )0xFDF0, ( short )0xFE38, ( short )0xFE90, ( short )0xFE90, ( short )0xFDA8, ( short )0xFD48, ( short )0xFD70,
( short )0xFD68, ( short )0xFD00, ( short )0xFCB8, ( short )0xFCB8, ( short )0xFCF8, ( short )0xFD00, ( short )0xFC30, ( short )0xFBD0,
( short )0xFC10, ( short )0xFC20, ( short )0xFBE0, ( short )0xFBA8, ( short )0xFC30, ( short )0xFD00, ( short )0xFD50, ( short )0xFD90,
( short )0xFE10, ( short )0xFEA8, ( short )0xFF40, ( short )0xFFA0, ( short )0xFFD0, ( short )0xFFC8, ( short )0xFFC8, ( short )0xFFD8,
( short )0xFFA0, ( short )0xFF98, ( short )0xFFB8, ( short )0x0050, ( short )0x00B8, ( short )0x00B0, ( short )0x01B0, ( short )0x02E0,
( short )0x0318, ( short )0x0330, ( short )0x02E0, ( short )0x02C8, ( short )0x0278, ( short )0x0150, ( short )0x0050, ( short )0xFFC0,
( short )0xFF88, ( short )0xFF18, ( short )0xFE90, ( short )0xFE40, ( short )0xFE30, ( short )0xFDE8, ( short )0xFDD0, ( short )0xFD70,
( short )0xFD48, ( short )0xFD10, ( short )0xFC98, ( short )0xFC38, ( short )0xFC38, ( short )0xFC78, ( short )0xFC98, ( short )0xFCF0,
( short )0xFDA8, ( short )0xFE48, ( short )0xFEC8, ( short )0xFF30, ( short )0xFF98, ( short )0x0000, ( short )0x0050, ( short )0x0058,
( short )0x00A8, ( short )0x00E8, ( short )0x00D0, ( short )0x0138, ( short )0x01E0, ( short )0x0218, ( short )0x0208, ( short )0x0230,
( short )0x0258, ( short )0x0248, ( short )0x02B0, ( short )0x0318, ( short )0x0330, ( short )0x0358, ( short )0x0380, ( short )0x0378,
( short )0x0408, ( short )0x0480, ( short )0x0460, ( short )0x03C8, ( short )0x0318, ( short )0x02B0, ( short )0x01E8, ( short )0x00B8,
( short )0xFFD8, ( short )0xFF30, ( short )0xFEC8, ( short )0xFE60, ( short )0xFE60, ( short )0xFE78, ( short )0xFE78, ( short )0xFDC0,
( short )0xFD70, ( short )0xFD50, ( short )0xFD08, ( short )0xFC88, ( short )0xFC28, ( short )0xFC98, ( short )0xFD18, ( short )0xFD60,
( short )0xFD60, ( short )0xFDD8, ( short )0xFE90, ( short )0xFEE8, ( short )0xFF10, ( short )0xFF58, ( short )0xFF90, ( short )0xFFB8,
( short )0xFFE0, ( short )0xFFF0, ( short )0xFFF0, ( short )0x00D0, ( short )0x0190, ( short )0x01C8, ( short )0x0180, ( short )0x0188,
( short )0x01B0, ( short )0x0238, ( short )0x0298, ( short )0x02B8, ( short )0x0268, ( short )0x0258, ( short )0x0258, ( short )0x0230,
( short )0x0228, ( short )0x0230, ( short )0x0258, ( short )0x0248, ( short )0x01F8, ( short )0x0150, ( short )0x00C8, ( short )0x0058,
( short )0x0058, ( short )0x0038, ( short )0x0000, ( short )0xFF50, ( short )0xFF00, ( short )0xFEF8, ( short )0xFE80, ( short )0xFDB8,
( short )0xFD70, ( short )0xFD00, ( short )0xFC90, ( short )0xFC40, ( short )0xFC28, ( short )0xFC58, ( short )0xFC98, ( short )0xFD10,
( short )0xFD78, ( short )0xFDE0, ( short )0xFE80, ( short )0xFF08, ( short )0xFF60, ( short )0xFFD0, ( short )0x0030, ( short )0x0068,
( short )0x0110, ( short )0x0198, ( short )0x01C0, ( short )0x0208, ( short )0x0260, ( short )0x0280, ( short )0x0320, ( short )0x0390,
( short )0x0398, ( short )0x0410, ( short )0x0488, ( short )0x04A0, ( short )0x0448, ( short )0x0408, ( short )0x03E0, ( short )0x03C8,
( short )0x0398, ( short )0x0350, ( short )0x0308, ( short )0x02C8, ( short )0x0278, ( short )0x01D8, ( short )0x0148, ( short )0x00E8,
( short )0x0040, ( short )0xFFA0, ( short )0xFF50, ( short )0xFDC0, ( short )0xFC88, ( short )0xFC30, ( short )0xFB88, ( short )0xFAA8,
( short )0xFA50, ( short )0xFA30, ( short )0xFA40, ( short )0xFA70, ( short )0xFAB8, ( short )0xFAE0, ( short )0xFB28, ( short )0xFB58,
( short )0xFB80, ( short )0xFBB0, ( short )0xFC00, ( short )0xFC80, ( short )0xFCF0, ( short )0xFDB8, ( short )0xFE58, ( short )0xFED8,
( short )0x0008, ( short )0x0100, ( short )0x0180, ( short )0x01D0, ( short )0x0210, ( short )0x0248, ( short )0x0238, ( short )0x0200,
( short )0x01D0, ( short )0x02D0, ( short )0x03A0, ( short )0x03D8, ( short )0x03C0, ( short )0x03D8, ( short )0x03F8, ( short )0x0370,
( short )0x02C0, ( short )0x0258, ( short )0x01B8, ( short )0x0120, ( short )0x0090, ( short )0x0088, ( short )0x00A8, ( short )0x00A8,
( short )0x0088, ( short )0x0068, ( short )0x0060, ( short )0xFFE0, ( short )0xFF00, ( short )0xFE50, ( short )0xFDC8, ( short )0xFCF0,
( short )0xFC30, ( short )0xFBB0, ( short )0xFBD8, ( short )0xFC20, ( short )0xFC58, ( short )0xFC30, ( short )0xFC40, ( short )0xFC78,
( short )0xFCC0, ( short )0xFCE8, ( short )0xFD10, ( short )0xFD48, ( short )0xFD88, ( short )0xFDE8, ( short )0xFF10, ( short )0x0020,
( short )0x0110, ( short )0x01B8, ( short )0x0248, ( short )0x02C0, ( short )0x0358, ( short )0x03B8, ( short )0x03C8, ( short )0x0320,
( short )0x0288, ( short )0x0280, ( short )0x0300, ( short )0x0340, ( short )0x0320, ( short )0x0380, ( short )0x03F8, ( short )0x0418,
( short )0x0378, ( short )0x02E0, ( short )0x0288, ( short )0x0280, ( short )0x0238, ( short )0x01D0, ( short )0x0168, ( short )0x0138,
( short )0x0110, ( short )0x0140, ( short )0x0148, ( short )0x0150, ( short )0x00A8, ( short )0x0010, ( short )0xFFB0, ( short )0xFEB8,
( short )0xFDE0, ( short )0xFD48, ( short )0xFCE8, ( short )0xFCA8, ( short )0xFC78, ( short )0xFC48, ( short )0xFC50, ( short )0xFC70,
( short )0xFCA8, ( short )0xFCE8, ( short )0xFD28, ( short )0xFDD0, ( short )0xFE70, ( short )0xFED8, ( short )0x0040, ( short )0x0188,
( short )0x0258, ( short )0x03C0, ( short )0x04F0, ( short )0x05B8, ( short )0x0638, ( short )0x0670, ( short )0x0690, ( short )0x0708,
( short )0x0708, ( short )0x06B8, ( short )0x0660, ( short )0x0650, ( short )0x0630, ( short )0x05C8, ( short )0x0578, ( short )0x0548,
( short )0x0508, ( short )0x0470, ( short )0x03D0, ( short )0x0350, ( short )0x0278, ( short )0x01A0, ( short )0x00F8, ( short )0x00B0,
( short )0x0078, ( short )0x0030, ( short )0xFFE8, ( short )0xFFC8, ( short )0xFFB8, ( short )0xFED0, ( short )0xFE08, ( short )0xFD98,
( short )0xFC70, ( short )0xFB60, ( short )0xFAA8, ( short )0xFA10, ( short )0xF9B8, ( short )0xF980, ( short )0xF9A0, ( short )0xFA00,
( short )0xFA68, ( short )0xFB90, ( short )0xFCB8, ( short )0xFD98, ( short )0xFE68, ( short )0xFF18, ( short )0xFFC0, ( short )0x0078,
( short )0x00F8, ( short )0x0218, ( short )0x0320, ( short )0x03C0, ( short )0x0478, ( short )0x0510, ( short )0x0570, ( short )0x05D8,
( short )0x05E0, ( short )0x05B8, ( short )0x0508, ( short )0x0468, ( short )0x03E0, ( short )0x02F0, ( short )0x0218, ( short )0x0168,
( short )0x00F0, ( short )0x0060, ( short )0xFFD0, ( short )0xFF58, ( short )0xFEC0, ( short )0xFE48, ( short )0xFDB0, ( short )0xFD58,
( short )0xFD38, ( short )0xFCD8, ( short )0xFC80, ( short )0xFC50, ( short )0xFC08, ( short )0xFB48, ( short )0xFA98, ( short )0xF9F8,
( short )0xF8F8, ( short )0xF810, ( short )0xF7F8, ( short )0xF818, ( short )0xF848, ( short )0xF8E8, ( short )0xF9E0, ( short )0xFB08,
( short )0xFC38, ( short )0xFD10, ( short )0xFDE8, ( short )0xFF10, ( short )0xFFD0, ( short )0x0048, ( short )0x00E0, ( short )0x0160,
( short )0x01B8, ( short )0x01C8, ( short )0x01E0, ( short )0x0200, ( short )0x0228, ( short )0x0240, ( short )0x0240, ( short )0x0240,
( short )0x0260, ( short )0x0280, ( short )0x0280, ( short )0x02F0, ( short )0x0370, ( short )0x03C8, ( short )0x03C8, ( short )0x03A8,
( short )0x03A0, ( short )0x02F8, ( short )0x0220, ( short )0x0150, ( short )0x0098, ( short )0xFFE0, ( short )0xFF20, ( short )0xFEA0,
( short )0xFE50, ( short )0xFE18, ( short )0xFD38, ( short )0xFC60, ( short )0xFBE0, ( short )0xFAC8, ( short )0xF9A0, ( short )0xF8B8,
( short )0xF830, ( short )0xF888, ( short )0xF8B8, ( short )0xF908, ( short )0xFA80, ( short )0xFBF8, ( short )0xFD48, ( short )0xFEC8,
( short )0x0040, ( short )0x01B0, ( short )0x0298, ( short )0x0338, ( short )0x03C0, ( short )0x0470, ( short )0x0520, ( short )0x0588,
( short )0x0610, ( short )0x0688, ( short )0x06C8, ( short )0x0670, ( short )0x05E8, ( short )0x0578, ( short )0x0580, ( short )0x0578,
( short )0x0528, ( short )0x0498, ( short )0x0408, ( short )0x0390, ( short )0x03F8, ( short )0x0458, ( short )0x0488, ( short )0x0468,
( short )0x0450, ( short )0x0458, ( short )0x03A8, ( short )0x02D0, ( short )0x0210, ( short )0x0158, ( short )0x0088, ( short )0xFFA8,
( short )0xFF00, ( short )0xFE88, ( short )0xFE30, ( short )0xFD88, ( short )0xFCB8, ( short )0xFC28, ( short )0xFB30, ( short )0xF9F0,
( short )0xF8E8, ( short )0xF890, ( short )0xF890, ( short )0xF8C0, ( short )0xF978, ( short )0xFA78, ( short )0xFBE8, ( short )0xFD20,
( short )0xFE28, ( short )0xFF60, ( short )0x00D8, ( short )0x0220, ( short )0x02F8, ( short )0x0378, ( short )0x03E0, ( short )0x0438,
( short )0x0488, ( short )0x0498, ( short )0x04A8, ( short )0x0480, ( short )0x0440, ( short )0x03C0, ( short )0x02D8, ( short )0x01E8,
( short )0x0140, ( short )0x00D8, ( short )0x0068, ( short )0xFFE0, ( short )0x0068, ( short )0x0130, ( short )0x0228, ( short )0x0260,
( short )0x0278, ( short )0x02D0, ( short )0x02D8, ( short )0x0290, ( short )0x01E0, ( short )0x00D0, ( short )0xFFE0, ( short )0xFEF8,
( short )0xFE08, ( short )0xFD28, ( short )0xFC88, ( short )0xFBE0, ( short )0xFB60, ( short )0xFAD8, ( short )0xFA08, ( short )0xF978,
( short )0xF8E8, ( short )0xF8B0, ( short )0xF8B0, ( short )0xF8D0, ( short )0xF9D0, ( short )0xFAF8, ( short )0xFC18, ( short )0xFDB0,
( short )0xFF38, ( short )0x00A0, ( short )0x01F8, ( short )0x02F8, ( short )0x03C0, ( short )0x0460, ( short )0x04B8, ( short )0x04C8,
( short )0x04C8, ( short )0x04C0, ( short )0x0498, ( short )0x0490, ( short )0x0478, ( short )0x0448, ( short )0x0420, ( short )0x03F8,
( short )0x0328, ( short )0x0238, ( short )0x01B0, ( short )0x0170, ( short )0x0128, ( short )0x0090, ( short )0x00E8, ( short )0x01B8,
( short )0x02B8, ( short )0x0280, ( short )0x0218, ( short )0x0218, ( short )0x01F0, ( short )0x0148, ( short )0x0000, ( short )0xFEC0,
( short )0xFE08, ( short )0xFD70, ( short )0xFCA0, ( short )0xFBF0, ( short )0xFBC0, ( short )0xFBA0, ( short )0xFB80, ( short )0xFB18,
( short )0xFB28, ( short )0xFB98, ( short )0xFBC0, ( short )0xFBD0, ( short )0xFC08, ( short )0xFC78, ( short )0xFDC8, ( short )0xFEC8,
( short )0xFF78, ( short )0x00D0, ( short )0x0238, ( short )0x0360, ( short )0x0398, ( short )0x0360, ( short )0x0368, ( short )0x0380,
( short )0x0318, ( short )0x0250, ( short )0x0208, ( short )0x0220, ( short )0x0218, ( short )0x01F0, ( short )0x01C8, ( short )0x0210,
( short )0x0270, ( short )0x0270, ( short )0x0240, ( short )0x0290, ( short )0x0310, ( short )0x0360, ( short )0x0340, ( short )0x0310,
( short )0x0318, ( short )0x0320, ( short )0x02D8, ( short )0x0240, ( short )0x0158, ( short )0x00A0, ( short )0x0008, ( short )0xFF30,
( short )0xFE50, ( short )0xFDA8, ( short )0xFD28, ( short )0xFCC8, ( short )0xFC60, ( short )0xFBA8, ( short )0xFB40, ( short )0xFB10,
( short )0xFB18, ( short )0xFB28, ( short )0xFB48, ( short )0xFB68, ( short )0xFBA8, ( short )0xFBF8, ( short )0xFCB8, ( short )0xFD78,
( short )0xFE00, ( short )0xFE88, ( short )0xFF30, ( short )0xFF98, ( short )0xFFC8, ( short )0xFFE8, ( short )0x0050, ( short )0x00B0,
( short )0x00E0, ( short )0x0040, ( short )0xFF68, ( short )0xFED8, ( short )0xFEE8, ( short )0xFEE0, ( short )0xFE90, ( short )0xFEA8,
( short )0xFF88, ( short )0x0080, ( short )0x0188, ( short )0x0208, ( short )0x0290, ( short )0x0390, ( short )0x0438, ( short )0x0450,
( short )0x0428, ( short )0x03F8, ( short )0x03E0, ( short )0x0388, ( short )0x02E0, ( short )0x0240, ( short )0x0190, ( short )0x00D0,
( short )0x0000, ( short )0x0000, ( short )0x0018, ( short )0x00FF, ( short )0x0068, ( short )0x00FE, ( short )0x00F8, ( short )0x00FD
};
gsm_byte gsm_enc_gsmdata[ ] = {
0xD5, 0x1F, 0x74, 0x21, 0xA0, 0x50, 0x40, 0xC9, 0x24, 0x7B, 0xFA, 0x6B, 0x52, 0xE0, 0xB6, 0xD6,
0x8E, 0xB9, 0x2B, 0xAE, 0xE0, 0x8B, 0x23, 0x52, 0x3B, 0x13, 0x86, 0xE0, 0x14, 0x4A, 0x41, 0x44,
0x32, 0xD3, 0xA1, 0x83, 0xA1, 0x1D, 0xA6, 0x80, 0xBA, 0xD2, 0x96, 0x26, 0xFB, 0x84, 0x80, 0x6D,
0x9C, 0x25, 0x1D, 0x9B, 0xAA, 0xC0, 0xBB, 0x4C, 0x95, 0xB9, 0x53, 0xAE, 0xA0, 0xB6, 0xE4, 0x46,
0x37, 0x1B, 0xD4, 0xA5, 0x7B, 0x1D, 0x22, 0x97, 0x00, 0xBA, 0xA5, 0x6D, 0xD2, 0xA1, 0x7E, 0xC0,
0xB9, 0x25, 0xD2, 0xB4, 0x94, 0x9E, 0xE0, 0x3E, 0xDE, 0xED, 0xD6, 0xD2, 0xE2, 0xC0, 0xD7, 0x5D,
0x8D, 0x59, 0xAC, 0xD3, 0xE4, 0x83, 0x95, 0x59, 0xC0, 0xA1, 0x48, 0xD2, 0x66, 0xC7, 0x2C, 0x9E,
0xA0, 0x2A, 0xD3, 0xEE, 0x45, 0x1C, 0x80, 0xE0, 0x6B, 0x34, 0x8C, 0x4B, 0x29, 0xCB, 0x00, 0xBA,
0xF6, 0x0D, 0x26, 0x9A, 0xD3, 0xA4, 0x82, 0x9D, 0x63, 0x7A, 0xC0, 0x67, 0x24, 0xBA, 0xD6, 0x7C,
0xC2, 0xC0, 0x37, 0x20, 0x4F, 0x10, 0xE0, 0xC7, 0x80, 0x6A, 0x77, 0x63, 0xBE, 0x6B, 0x5A, 0xC0,
0xB5, 0x34, 0xD1, 0x34, 0x9C, 0xD4, 0xE8, 0x56, 0xB2, 0x58, 0x5F, 0x00, 0xB7, 0xAF, 0x92, 0x12,
0x90, 0xD5, 0xA4, 0x39, 0x23, 0x4E, 0x46, 0x87, 0x51, 0xAC, 0xD8, 0xDB, 0x6D, 0xCB, 0x17, 0x50,
0x89, 0x7B, 0x44, 0x28, 0x03, 0x6B, 0xD5, 0xA9, 0x36, 0x36, 0xD9, 0x6B, 0xA8, 0x93, 0x3A, 0x96,
0xEE, 0xFF, 0x67, 0x8B, 0x36, 0xDA, 0x09, 0xB4, 0x99, 0x67, 0x2B, 0x88, 0xE4, 0xB5, 0xA5, 0xDA,
0x65, 0x47, 0xDA, 0x1E, 0x96, 0xFA, 0xEC, 0xD5, 0xA9, 0x45, 0x63, 0x1A, 0xCB, 0xC9, 0x48, 0x9D,
0x83, 0x5F, 0x6F, 0xCB, 0x08, 0x1B, 0x97, 0xC9, 0x18, 0x0A, 0x63, 0xCB, 0xA6, 0xE1, 0x84, 0xF5,
0x62, 0x61, 0x6A, 0x84, 0xDC, 0xB6, 0x37, 0x9E, 0xD6, 0xAB, 0x3C, 0x53, 0x93, 0xC1, 0x2A, 0xAA,
0x81, 0x8D, 0x6B, 0x65, 0x60, 0xA8, 0xFB, 0x2E, 0x22, 0x59, 0x74, 0x61, 0xA6, 0x5D, 0x73, 0x94,
0xF8, 0xE4, 0xC1, 0x46, 0x26, 0x5E, 0x8A, 0x86, 0xED, 0xD4, 0xA6, 0x2D, 0x57, 0x6B, 0xBE, 0xE8,
0x58, 0xDA, 0x3D, 0x98, 0x99, 0xBE, 0xA8, 0xC2, 0xDB, 0x6A, 0x2E, 0x51, 0x62, 0xE5, 0x80, 0x58,
0x76, 0xB8, 0xE4, 0x6C, 0x84, 0xCA, 0x98, 0x06, 0x0B, 0xFC, 0xD2, 0x66, 0x7C, 0x62, 0x3A, 0x5B,
0xC5, 0xDF, 0x7D, 0x75, 0x49, 0x1E, 0x52, 0xC7, 0x55, 0xF7, 0x84, 0xA6, 0xDA, 0x5D, 0x43, 0x26,
0x85, 0x98, 0xD8, 0x8F, 0xB6, 0xC5, 0x28, 0xEB, 0x3E, 0x75, 0x04, 0xD2, 0x27, 0xBA, 0x2A, 0x2B,
0xB7, 0x03, 0x13, 0x45, 0x35, 0x1B, 0x78, 0x5F, 0xC3, 0xBA, 0xDB, 0xAE, 0x27, 0xC2, 0x5E, 0xA4,
0x50, 0x8C, 0x8A, 0xBB, 0x4F, 0x60, 0xC3, 0xEE, 0x41, 0x46, 0x4A, 0xDF, 0xD2, 0x27, 0xB2, 0xAD,
0xEB, 0x5F, 0x43, 0x4C, 0x6A, 0x09, 0x2A, 0xCC, 0xB7, 0x47, 0x2A, 0xB9, 0x91, 0xB6, 0xD4, 0x5B,
0x25, 0x58, 0xD8, 0xFD, 0x46, 0x95, 0x5A, 0xC3, 0x27, 0x5B, 0x3F, 0xFB, 0x12, 0xD2, 0x26, 0xC3,
0xA9, 0xA1, 0xB6, 0xA2, 0xCB, 0x1B, 0xD0, 0x73, 0xE4, 0xBA, 0xA1, 0xE9, 0x05, 0xBE, 0x79, 0x23,
0xA4, 0xC2, 0x3A, 0x4B, 0x11, 0xE5, 0x68, 0xC4, 0xC1, 0xBA, 0xC1, 0xCC, 0x8B, 0x02, 0xD2, 0x63,
0x6C, 0xEE, 0x19, 0x5E, 0xE1, 0xB6, 0x4C, 0x1A, 0xB4, 0x5E, 0xF0, 0xC2, 0x27, 0x20, 0x55, 0xBD,
0x6D, 0x64, 0xE1, 0xC7, 0x45, 0xA9, 0x65, 0x6D, 0x7D, 0x42, 0x56, 0xD8, 0xB2, 0xB6, 0xEC, 0xD3,
0x61, 0x5B, 0x62, 0x61, 0x60, 0xA1, 0x5B, 0xD6, 0x15, 0x29, 0x09, 0x6C, 0xA1, 0x3E, 0xAD, 0x65,
0x34, 0xC3, 0xC0, 0xC1, 0x22, 0x6D, 0x4C, 0x57, 0x10, 0xDB, 0x41, 0xD2, 0xE1, 0x77, 0x64, 0xF7,
0xD3, 0x21, 0x73, 0xA9, 0x29, 0x58, 0xC1, 0xA1, 0x5A, 0x52, 0xB7, 0x32, 0x64, 0xC1, 0x67, 0x42,
0x74, 0x2C, 0xDC, 0x61, 0x61, 0x65, 0x8B, 0xCB, 0x04, 0xE5, 0x60, 0xC1, 0xC9, 0x5E, 0x8E, 0x36,
0x83, 0xD2, 0xA2, 0x83, 0xA9, 0xD9, 0xCD, 0x21, 0xB9, 0x25, 0xCD, 0xE6, 0x1D, 0x60, 0xA1, 0xB4,
0xAA, 0x8F, 0xBA, 0x75, 0xC3, 0x01, 0x0B, 0x3B, 0x51, 0xDB, 0xEC, 0x62, 0xE1, 0x38, 0xCD, 0x40,
0x3B, 0xD3, 0xD2, 0x26, 0x94, 0x29, 0xD2, 0x61, 0x21, 0x6B, 0x4A, 0x8D, 0x24, 0xB5, 0xBB, 0x21,
0x12, 0xA5, 0x99, 0xA5, 0x1A, 0xCA, 0xA1, 0xEF, 0x5D, 0xAA, 0xAE, 0xD3, 0x64, 0xE1, 0xA3, 0x6B,
0xAE, 0x35, 0x39, 0xD2, 0x66, 0x73, 0xB6, 0x90, 0xC6, 0xC1, 0x32, 0xD1, 0xBA, 0xC9, 0x25, 0x65,
0x81, 0xA8, 0xD2, 0xB1, 0xE7, 0x18, 0xBE, 0xC0, 0xFC, 0xE4, 0x85, 0xB5, 0x06, 0xB4, 0x81, 0x35,
0x46, 0xB6, 0xC8, 0x9B
};
#endif /* end of include guard: DATA_H */

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,864 @@
#ifndef DATA_H
#define DATA_H
gsm_signal gsm_enc_pcmdata[] = {
(short) 0x0000, (short) 0x0000, (short) 0x0010, (short) 0x0010,
(short) 0x0010, (short) 0x0020, (short) 0x0020, (short) 0x0018,
(short) 0x0028, (short) 0x0020, (short) 0x0020, (short) 0x0028,
(short) 0x0028, (short) 0x0020, (short) 0x0030, (short) 0x0030,
(short) 0x0028, (short) 0x0010, (short) 0x0008, (short) 0x0000,
(short) 0x0050, (short) 0x0060, (short) 0x0058, (short) 0x00D0,
(short) 0x00E0, (short) 0x00D0, (short) 0x0118, (short) 0x0128,
(short) 0x0118, (short) 0x0128, (short) 0x0110, (short) 0x0100,
(short) 0x00A0, (short) 0x0058, (short) 0x0048, (short) 0x0058,
(short) 0x0060, (short) 0x0058, (short) 0x0050, (short) 0x0048,
(short) 0x0040, (short) 0x0030, (short) 0x0020, (short) 0x0010,
(short) 0x0008, (short) 0xFFF8, (short) 0xFFE8, (short) 0xFFE0,
(short) 0xFFD8, (short) 0xFFC8, (short) 0xFFC0, (short) 0xFFC0,
(short) 0xFF98, (short) 0xFF78, (short) 0xFF78, (short) 0xFFC8,
(short) 0x0000, (short) 0x0010, (short) 0x0040, (short) 0x0060,
(short) 0x0068, (short) 0x0078, (short) 0x0078, (short) 0x0070,
(short) 0x00A8, (short) 0x00C8, (short) 0x00C8, (short) 0x00E0,
(short) 0x00F0, (short) 0x00E8, (short) 0x00F8, (short) 0x00F8,
(short) 0x00F0, (short) 0x00E0, (short) 0x00C8, (short) 0x00B8,
(short) 0x00E8, (short) 0x0100, (short) 0x00F8, (short) 0x00E8,
(short) 0x00D8, (short) 0x00C0, (short) 0x00A8, (short) 0x0020,
(short) 0xFFC0, (short) 0xFFA0, (short) 0xFFA0, (short) 0xFFA8,
(short) 0xFFB0, (short) 0xFFD0, (short) 0xFFF8, (short) 0x0000,
(short) 0x0020, (short) 0x0030, (short) 0x0030, (short) 0x0030,
(short) 0x0028, (short) 0x0020, (short) 0xFFF0, (short) 0xFFD0,
(short) 0xFFC8, (short) 0xFFC8, (short) 0xFFD0, (short) 0xFFD8,
(short) 0xFFE8, (short) 0xFFF8, (short) 0xFFF8, (short) 0x0008,
(short) 0x0018, (short) 0x0018, (short) 0x0078, (short) 0x00B8,
(short) 0x00C0, (short) 0x0100, (short) 0x0130, (short) 0x0128,
(short) 0x0108, (short) 0x00D8, (short) 0x00C0, (short) 0x0078,
(short) 0x0038, (short) 0x0020, (short) 0x0020, (short) 0x0000,
(short) 0xFFE0, (short) 0xFFE0, (short) 0xFFD8, (short) 0xFFC8,
(short) 0xFFC8, (short) 0xFFA0, (short) 0xFF88, (short) 0xFF98,
(short) 0xFF80, (short) 0xFF70, (short) 0xFF80, (short) 0xFF78,
(short) 0xFF78, (short) 0xFF90, (short) 0xFF80, (short) 0xFF78,
(short) 0xFF78, (short) 0xFF50, (short) 0xFF30, (short) 0xFF50,
(short) 0xFF38, (short) 0xFF30, (short) 0xFF40, (short) 0xFF58,
(short) 0xFF70, (short) 0xFF80, (short) 0xFF50, (short) 0xFF38,
(short) 0xFF40, (short) 0xFF18, (short) 0xFF00, (short) 0xFF08,
(short) 0xFF40, (short) 0xFF68, (short) 0xFF80, (short) 0xFF88,
(short) 0xFF88, (short) 0xFF88, (short) 0xFF88, (short) 0xFFB8,
(short) 0xFFE0, (short) 0xFFF0, (short) 0xFFD0, (short) 0xFFB8,
(short) 0xFFB8, (short) 0xFF90, (short) 0xFF70, (short) 0xFF70,
(short) 0xFF50, (short) 0xFF40, (short) 0xFF40, (short) 0xFF58,
(short) 0xFF70, (short) 0xFF80, (short) 0xFFC8, (short) 0x0000,
(short) 0x0018, (short) 0x0030, (short) 0x0048, (short) 0x0048,
(short) 0x0028, (short) 0x0008, (short) 0xFFF8, (short) 0xFFD8,
(short) 0xFFC8, (short) 0xFFB8, (short) 0xFF98, (short) 0xFF78,
(short) 0xFF70, (short) 0xFFF0, (short) 0x0058, (short) 0x0088,
(short) 0x00B8, (short) 0x00D0, (short) 0x00D8, (short) 0x00E8,
(short) 0x0138, (short) 0x0160, (short) 0x0158, (short) 0x0170,
(short) 0x0178, (short) 0x0160, (short) 0x0168, (short) 0x0160,
(short) 0x0140, (short) 0x0118, (short) 0x00F0, (short) 0x00C8,
(short) 0x0098, (short) 0x0078, (short) 0x0060, (short) 0x0018,
(short) 0xFFC0, (short) 0xFF90, (short) 0xFF48, (short) 0xFF00,
(short) 0xFEE8, (short) 0xFEC8, (short) 0xFEB8, (short) 0xFEB8,
(short) 0xFEA0, (short) 0xFE88, (short) 0xFE80, (short) 0xFEB8,
(short) 0xFEF8, (short) 0xFF38, (short) 0xFFA0, (short) 0xFFE8,
(short) 0x0008, (short) 0x0030, (short) 0x0058, (short) 0x0068,
(short) 0x0068, (short) 0x0070, (short) 0x0068, (short) 0x0050,
(short) 0x0040, (short) 0x0040, (short) 0x0020, (short) 0x0000,
(short) 0xFFE8, (short) 0xFFF0, (short) 0xFFF8, (short) 0xFFF8,
(short) 0x0038, (short) 0x0068, (short) 0x0078, (short) 0x0038,
(short) 0x0008, (short) 0xFFF0, (short) 0xFFE0, (short) 0xFFD8,
(short) 0xFFD8, (short) 0xFFE0, (short) 0xFFD0, (short) 0xFFC8,
(short) 0x0000, (short) 0x0030, (short) 0x0048, (short) 0x0068,
(short) 0x0080, (short) 0x0088, (short) 0x0088, (short) 0x0088,
(short) 0x0088, (short) 0x0088, (short) 0x0088, (short) 0x0078,
(short) 0x0098, (short) 0x00B0, (short) 0x00B8, (short) 0x0098,
(short) 0x0070, (short) 0x0058, (short) 0x0060, (short) 0x0078,
(short) 0x00A8, (short) 0x00B8, (short) 0x00A8, (short) 0x00A0,
(short) 0x0080, (short) 0x0068, (short) 0x0060, (short) 0x0058,
(short) 0x0048, (short) 0x0030, (short) 0x0038, (short) 0x0038,
(short) 0x0030, (short) 0x0050, (short) 0x0058, (short) 0x0060,
(short) 0x0030, (short) 0x0008, (short) 0xFFF8, (short) 0xFF90,
(short) 0xFF48, (short) 0xFF28, (short) 0xFF10, (short) 0xFEF8,
(short) 0xFEF0, (short) 0xFED8, (short) 0xFEB0, (short) 0xFEB0,
(short) 0xFEA8, (short) 0xFEB8, (short) 0xFED8, (short) 0xFEF8,
(short) 0xFF10, (short) 0xFF20, (short) 0xFF40, (short) 0xFF58,
(short) 0xFF80, (short) 0xFFA0, (short) 0xFFB8, (short) 0xFFC8,
(short) 0xFFD8, (short) 0xFFE0, (short) 0xFFF0, (short) 0x0048,
(short) 0x0098, (short) 0x00B0, (short) 0x0068, (short) 0x0018,
(short) 0xFFF8, (short) 0xFFE8, (short) 0xFFF0, (short) 0xFFF8,
(short) 0x0020, (short) 0x0038, (short) 0x0038, (short) 0x0050,
(short) 0x0068, (short) 0x0070, (short) 0x0068, (short) 0x0060,
(short) 0x0060, (short) 0x0038, (short) 0x0020, (short) 0x0018,
(short) 0x0040, (short) 0x0060, (short) 0x0068, (short) 0x0040,
(short) 0x0010, (short) 0x0000, (short) 0xFFB0, (short) 0xFF78,
(short) 0xFF70, (short) 0xFF90, (short) 0xFFA8, (short) 0xFFC8,
(short) 0xFF98, (short) 0xFF50, (short) 0xFF50, (short) 0xFF50,
(short) 0xFF58, (short) 0xFF68, (short) 0xFF48, (short) 0xFF20,
(short) 0xFF18, (short) 0xFF38, (short) 0xFF60, (short) 0xFF70,
(short) 0xFF80, (short) 0xFF98, (short) 0xFFA0, (short) 0xFFB8,
(short) 0xFFD0, (short) 0xFFE0, (short) 0x0018, (short) 0x0048,
(short) 0x0058, (short) 0x00B0, (short) 0x00F8, (short) 0x0108,
(short) 0x0118, (short) 0x0120, (short) 0x0118, (short) 0x0130,
(short) 0x0148, (short) 0x0140, (short) 0x0130, (short) 0x0120,
(short) 0x0108, (short) 0x0098, (short) 0x0038, (short) 0x0018,
(short) 0xFFD0, (short) 0xFF90, (short) 0xFF80, (short) 0xFF58,
(short) 0xFF38, (short) 0xFF30, (short) 0xFF48, (short) 0xFF68,
(short) 0xFF78, (short) 0xFF88, (short) 0xFFB8, (short) 0xFFD8,
(short) 0xFFE8, (short) 0xFFD8, (short) 0xFFF0, (short) 0x0010,
(short) 0x0020, (short) 0x0020, (short) 0x0018, (short) 0x0028,
(short) 0x0030, (short) 0x0030, (short) 0x0038, (short) 0x0060,
(short) 0x0080, (short) 0x0080, (short) 0x00B0, (short) 0x00D8,
(short) 0x00D0, (short) 0x00B8, (short) 0x00A8, (short) 0x00A8,
(short) 0x00A0, (short) 0x0090, (short) 0x0078, (short) 0x0070,
(short) 0x0068, (short) 0x0048, (short) 0x0018, (short) 0x0008,
(short) 0x0008, (short) 0x0000, (short) 0x0000, (short) 0xFFE8,
(short) 0xFFB0, (short) 0xFF90, (short) 0xFF88, (short) 0xFF70,
(short) 0xFF60, (short) 0xFF60, (short) 0xFF90, (short) 0xFFC0,
(short) 0xFFD0, (short) 0xFFD8, (short) 0xFFE0, (short) 0xFFE8,
(short) 0x0018, (short) 0x0050, (short) 0x0058, (short) 0x0030,
(short) 0x0008, (short) 0x0000, (short) 0x0018, (short) 0x0038,
(short) 0x0038, (short) 0x0048, (short) 0x0050, (short) 0x0050,
(short) 0x0020, (short) 0x0000, (short) 0xFFF8, (short) 0xFFB0,
(short) 0xFF70, (short) 0xFF68, (short) 0xFFB0, (short) 0xFFE8,
(short) 0xFFF8, (short) 0xFFF8, (short) 0xFFF8, (short) 0xFFF0,
(short) 0x0030, (short) 0x0070, (short) 0x0090, (short) 0x0098,
(short) 0x0098, (short) 0x0090, (short) 0x00A0, (short) 0x00B0,
(short) 0x00B8, (short) 0x00C0, (short) 0x00C0, (short) 0x00A8,
(short) 0x0098, (short) 0x0088, (short) 0x0078, (short) 0x0050,
(short) 0x0030, (short) 0x0020, (short) 0xFFD8, (short) 0xFF98,
(short) 0xFF88, (short) 0xFF50, (short) 0xFF20, (short) 0xFF18,
(short) 0xFEF8, (short) 0xFEE0, (short) 0xFEE8, (short) 0xFE70,
(short) 0xFE08, (short) 0xFE00, (short) 0xFE48, (short) 0xFE98,
(short) 0xFEB8, (short) 0xFEE8, (short) 0xFF10, (short) 0xFF28,
(short) 0xFF18, (short) 0xFF10, (short) 0xFF18, (short) 0xFF48,
(short) 0xFF70, (short) 0xFF88, (short) 0xFFE0, (short) 0x0028,
(short) 0x0040, (short) 0x0058, (short) 0x0068, (short) 0x0070,
(short) 0x0078, (short) 0x0070, (short) 0x0068, (short) 0x0068,
(short) 0x0078, (short) 0x0080, (short) 0x0080, (short) 0x0088,
(short) 0x0088, (short) 0x0080, (short) 0x0058, (short) 0x0030,
(short) 0x0020, (short) 0x0018, (short) 0x0018, (short) 0x0018,
(short) 0x0050, (short) 0x0090, (short) 0x00A0, (short) 0x0080,
(short) 0x0060, (short) 0x0050, (short) 0x0030, (short) 0x0018,
(short) 0x0010, (short) 0x0028, (short) 0x0038, (short) 0x0038,
(short) 0x0018, (short) 0xFFF8, (short) 0xFFF0, (short) 0x0000,
(short) 0x0020, (short) 0x0020, (short) 0x0030, (short) 0x0030,
(short) 0x0030, (short) 0x0040, (short) 0x0050, (short) 0x0050,
(short) 0x0050, (short) 0x0048, (short) 0x0048, (short) 0x0048,
(short) 0x0048, (short) 0x0048, (short) 0x0078, (short) 0x00A0,
(short) 0x00A8, (short) 0x00C0, (short) 0x00C8, (short) 0x00C0,
(short) 0x00D0, (short) 0x00E0, (short) 0x00D8, (short) 0x00E8,
(short) 0x00F0, (short) 0x00E0, (short) 0x0100, (short) 0x0118,
(short) 0x0110, (short) 0x0100, (short) 0x00F0, (short) 0x00D8,
(short) 0x0090, (short) 0x0048, (short) 0x0028, (short) 0x0020,
(short) 0x0020, (short) 0x0020, (short) 0x0038, (short) 0x0050,
(short) 0x0050, (short) 0x0050, (short) 0x0048, (short) 0x0040,
(short) 0x0050, (short) 0x0060, (short) 0x0060, (short) 0x0040,
(short) 0xFFC0, (short) 0xFF58, (short) 0xFF40, (short) 0xFF90,
(short) 0xFFE8, (short) 0x0000, (short) 0x0020, (short) 0x0030,
(short) 0x0030, (short) 0x0068, (short) 0x0098, (short) 0x00A8,
(short) 0x0110, (short) 0x0168, (short) 0x0170, (short) 0x0148,
(short) 0x0118, (short) 0x00F0, (short) 0x00E8, (short) 0x00E0,
(short) 0x00D0, (short) 0x0098, (short) 0x0060, (short) 0x0040,
(short) 0x0000, (short) 0xFFD8, (short) 0xFFD8, (short) 0xFFC0,
(short) 0xFFB0, (short) 0xFFB0, (short) 0xFF78, (short) 0xFF30,
(short) 0xFF10, (short) 0xFEF0, (short) 0xFEE8, (short) 0xFEF0,
(short) 0xFEC8, (short) 0xFED0, (short) 0xFEF8, (short) 0xFF00,
(short) 0xFF10, (short) 0xFF20, (short) 0xFF50, (short) 0xFF78,
(short) 0xFF90, (short) 0xFF80, (short) 0xFF70, (short) 0xFF70,
(short) 0xFF80, (short) 0xFF98, (short) 0xFFA0, (short) 0xFFB8,
(short) 0xFFD0, (short) 0xFFD8, (short) 0xFFF0, (short) 0x0000,
(short) 0x0008, (short) 0x0028, (short) 0x0048, (short) 0x0058,
(short) 0x0078, (short) 0x0070, (short) 0x0058, (short) 0x0068,
(short) 0x0098, (short) 0x00B8, (short) 0x00D8, (short) 0x00F0,
(short) 0x00F0, (short) 0x00E8, (short) 0x00F8, (short) 0x0100,
(short) 0x00D8, (short) 0x00D0, (short) 0x00C8, (short) 0x00E8,
(short) 0x0100, (short) 0x00F0, (short) 0x00E0, (short) 0x00C8,
(short) 0x00B8, (short) 0x00A0, (short) 0x0078, (short) 0x0058,
(short) 0x0038, (short) 0x0020, (short) 0x0010, (short) 0x0010,
(short) 0x0018, (short) 0x0010, (short) 0x0010, (short) 0x0010,
(short) 0x0018, (short) 0x0028, (short) 0x0008, (short) 0xFFE0,
(short) 0xFFC8, (short) 0xFF80, (short) 0xFF48, (short) 0xFF38,
(short) 0xFF40, (short) 0xFF48, (short) 0xFF48, (short) 0xFF70,
(short) 0xFF90, (short) 0xFFA8, (short) 0xFFB8, (short) 0xFFC0,
(short) 0xFFC8, (short) 0xFFC0, (short) 0xFFC0, (short) 0xFFC0,
(short) 0xFFB0, (short) 0xFFA0, (short) 0xFFA0, (short) 0xFFA0,
(short) 0xFFA8, (short) 0xFFB0, (short) 0xFF68, (short) 0xFF28,
(short) 0xFF08, (short) 0xFEF8, (short) 0xFEF8, (short) 0xFEE8,
(short) 0xFEE0, (short) 0xFED8, (short) 0xFEA8, (short) 0xFE98,
(short) 0xFEA8, (short) 0xFEA8, (short) 0xFEA0, (short) 0xFEA0,
(short) 0xFED0, (short) 0xFF00, (short) 0xFF30, (short) 0xFF28,
(short) 0xFF38, (short) 0xFF58, (short) 0xFF48, (short) 0xFF40,
(short) 0xFF48, (short) 0xFFB0, (short) 0x0010, (short) 0x0038,
(short) 0x0028, (short) 0x0010, (short) 0x0008, (short) 0x0050,
(short) 0x00A0, (short) 0x00B8, (short) 0x00A0, (short) 0x0080,
(short) 0x0070, (short) 0x0090, (short) 0x00B0, (short) 0x00B0,
(short) 0x00B8, (short) 0x00B8, (short) 0x00B0, (short) 0x00C0,
(short) 0x00D0, (short) 0x00C8, (short) 0x00A0, (short) 0x0068,
(short) 0x0038, (short) 0xFFF0, (short) 0xFFB0, (short) 0xFF88,
(short) 0xFF78, (short) 0xFF68, (short) 0xFF60, (short) 0xFF90,
(short) 0xFFC0, (short) 0xFFE0, (short) 0x0000, (short) 0x0020,
(short) 0x0030, (short) 0x00A0, (short) 0x0110, (short) 0x0138,
(short) 0x0140, (short) 0x0148, (short) 0x0148, (short) 0x0110,
(short) 0x00E8, (short) 0x00C0, (short) 0x00A0, (short) 0x0088,
(short) 0x0068, (short) 0x0008, (short) 0xFFB0, (short) 0xFF88,
(short) 0xFF58, (short) 0xFF30, (short) 0xFF20, (short) 0xFEF8,
(short) 0xFED8, (short) 0xFED8, (short) 0xFF00, (short) 0xFF20,
(short) 0xFF38, (short) 0xFF50, (short) 0xFF68, (short) 0xFF88,
(short) 0xFFA0, (short) 0xFFB8, (short) 0x0020, (short) 0x0080,
(short) 0x00A0, (short) 0x00D8, (short) 0x0100, (short) 0x0100,
(short) 0x0138, (short) 0x0168, (short) 0x0148, (short) 0x0128,
(short) 0x0120, (short) 0x00F8, (short) 0x00E8, (short) 0x00E0,
(short) 0x00C0, (short) 0x00A8, (short) 0x00B0, (short) 0x0098,
(short) 0x0070, (short) 0x0048, (short) 0x0030, (short) 0xFFD0,
(short) 0xFF60, (short) 0xFF48, (short) 0xFF10, (short) 0xFEA8,
(short) 0xFEA8, (short) 0xFEC0, (short) 0xFEC0, (short) 0xFEE8,
(short) 0xFEB0, (short) 0xFE58, (short) 0xFE88, (short) 0xFED0,
(short) 0xFEB8, (short) 0xFE48, (short) 0xFE58, (short) 0xFEE8,
(short) 0xFF28, (short) 0xFF18, (short) 0xFF60, (short) 0x00A0,
(short) 0x01A0, (short) 0x0188, (short) 0x0178, (short) 0x0208,
(short) 0x0208, (short) 0x0100, (short) 0x0018, (short) 0xFFE0,
(short) 0xFEE0, (short) 0xFD68, (short) 0xFD00, (short) 0xFD60,
(short) 0xFD70, (short) 0xFDA8, (short) 0xFF00, (short) 0x00A0,
(short) 0x0170, (short) 0x0210, (short) 0x02D8, (short) 0x0310,
(short) 0x0218, (short) 0x00A0, (short) 0xFFA0, (short) 0xFDF0,
(short) 0xFBD8, (short) 0xFB08, (short) 0xF9C0, (short) 0xF830,
(short) 0xF8D8, (short) 0xFCC0, (short) 0x0038, (short) 0x01A0,
(short) 0x0380, (short) 0x0A18, (short) 0x0F50, (short) 0x0DB0,
(short) 0x0C30, (short) 0x0E18, (short) 0x0CA8, (short) 0x0570,
(short) 0xFF98, (short) 0xFE38, (short) 0xFBA0, (short) 0xF700,
(short) 0xF5D0, (short) 0xF7C8, (short) 0xF9A8, (short) 0xFB48,
(short) 0xFBB0, (short) 0xFC78, (short) 0xFF00, (short) 0xFE98,
(short) 0xFB20, (short) 0xFA48, (short) 0xFAC0, (short) 0xF8C8,
(short) 0xF6E0, (short) 0xF9C0, (short) 0xFE08, (short) 0xFF80,
(short) 0x0428, (short) 0x0B70, (short) 0x0E18, (short) 0x0D38,
(short) 0x0D38, (short) 0x0C28, (short) 0x01D0, (short) 0xF578,
(short) 0xF108, (short) 0xFB50, (short) 0x0498, (short) 0x0428,
(short) 0x0CE8, (short) 0x2190, (short) 0x29F0, (short) 0x22E0,
(short) 0x1F68, (short) 0x2050, (short) 0x1810, (short) 0x0710,
(short) 0xFA98, (short) 0xF438, (short) 0xEE68, (short) 0xE950,
(short) 0xEBC8, (short) 0xF538, (short) 0xFEB8, (short) 0x0240,
(short) 0x0460, (short) 0x09D0, (short) 0x0978, (short) 0xFFF8,
(short) 0xF810, (short) 0xF190, (short) 0xE8D0, (short) 0xE290,
(short) 0xDF60, (short) 0xDFF0, (short) 0xE668, (short) 0xEC20,
(short) 0xF138, (short) 0xFAC0, (short) 0x04F0, (short) 0x08D0,
(short) 0x08C8, (short) 0x0B18, (short) 0x09F8, (short) 0x0230,
(short) 0xFA38, (short) 0xFA68, (short) 0xFC78, (short) 0xF9B8,
(short) 0xF850, (short) 0xFEA8, (short) 0x05B8, (short) 0x0690,
(short) 0x02E8, (short) 0x0268, (short) 0x0498, (short) 0xFCB0,
(short) 0xF018, (short) 0xEDF8, (short) 0x0090, (short) 0x0F48,
(short) 0x0C70, (short) 0x1278, (short) 0x27B8, (short) 0x2EA0,
(short) 0x21F8, (short) 0x1920, (short) 0x1918, (short) 0x1530,
(short) 0x0638, (short) 0xF858, (short) 0xF720, (short) 0xF9F8,
(short) 0xF600, (short) 0xF850, (short) 0x0590, (short) 0x0EE0,
(short) 0x1000, (short) 0x10D8, (short) 0x1460, (short) 0x10F8,
(short) 0x0500, (short) 0xFBC0, (short) 0xF7A8, (short) 0xF250,
(short) 0xEC00, (short) 0xEB30, (short) 0xF1C8, (short) 0xF920,
(short) 0xFC90, (short) 0x0190, (short) 0x0A60, (short) 0x0E80,
(short) 0x0DB0, (short) 0x0AD8, (short) 0x0690, (short) 0x0168,
(short) 0xFF20, (short) 0xFBD0, (short) 0xF6F8, (short) 0xF660,
(short) 0xF680, (short) 0xF5B0, (short) 0xF7C0, (short) 0xF120,
(short) 0xEA90, (short) 0xF030, (short) 0xEC18, (short) 0xE190,
(short) 0xE558, (short) 0xFF20, (short) 0x1090, (short) 0x0C50,
(short) 0x1248, (short) 0x2788, (short) 0x2AD0, (short) 0x1628,
(short) 0x08F0, (short) 0x0BA8, (short) 0x0538, (short) 0xEF48,
(short) 0xE410, (short) 0xEB10, (short) 0xEF68, (short) 0xEA28,
(short) 0xEC40, (short) 0xFC18, (short) 0x08A8, (short) 0x0818,
(short) 0x0778, (short) 0x0858, (short) 0x02F8, (short) 0xF8E8,
(short) 0xF1F0, (short) 0xEF40, (short) 0xECD0, (short) 0xE958,
(short) 0xEA70, (short) 0xF260, (short) 0xFAF0, (short) 0xFFA0,
(short) 0x04A0, (short) 0x0CF8, (short) 0x10F8, (short) 0x0EA0,
(short) 0x0D48, (short) 0x0BE8, (short) 0x05E0, (short) 0x03B0,
(short) 0x0358, (short) 0xFF18, (short) 0xFB40, (short) 0xF9B0,
(short) 0xF9C0, (short) 0xF7C0, (short) 0xEE90, (short) 0xEAA0,
(short) 0xEE00, (short) 0xE888, (short) 0xE200, (short) 0xEF00,
(short) 0x0948, (short) 0x1400, (short) 0x1270, (short) 0x1D88,
(short) 0x2CD8, (short) 0x2488, (short) 0x0DA8, (short) 0x04B8,
(short) 0x0548, (short) 0xF7B0, (short) 0xE3F0, (short) 0xE268,
(short) 0xEFF8, (short) 0xF5A0, (short) 0xF320, (short) 0xFC68,
(short) 0x0BF0, (short) 0x0FA0, (short) 0x0A50, (short) 0x01F8,
(short) 0xFE60, (short) 0xFC48, (short) 0xF340, (short) 0xEB28,
(short) 0xED58, (short) 0xF3C0, (short) 0xF5B8, (short) 0xF738,
(short) 0x00F8, (short) 0x0C70, (short) 0x0E90, (short) 0x0DE8,
(short) 0x1190, (short) 0x12B0, (short) 0x1058, (short) 0x0B98,
(short) 0x0638, (short) 0x0868, (short) 0x0998, (short) 0x02B0,
(short) 0xFE50, (short) 0x0120, (short) 0x02A0, (short) 0xFC90,
(short) 0xF810, (short) 0xF9D0, (short) 0xF818, (short) 0xF290,
(short) 0xF240, (short) 0xF6D0, (short) 0x0A48, (short) 0x1AD8,
(short) 0x1840, (short) 0x1C18, (short) 0x2B18, (short) 0x29F0,
(short) 0x1608, (short) 0x08B8, (short) 0x0778, (short) 0x0128,
(short) 0xF118, (short) 0xE868, (short) 0xEDA0, (short) 0xF310,
(short) 0xF248, (short) 0xF558, (short) 0x0058, (short) 0x0970,
(short) 0x0688, (short) 0x0108, (short) 0xFD08, (short) 0xF988,
(short) 0xF558, (short) 0xF0A0, (short) 0xF0B0, (short) 0xF540,
(short) 0xF6E8, (short) 0xFCA0, (short) 0x0758, (short) 0x0CD0,
(short) 0x0F60, (short) 0x1338, (short) 0x1458, (short) 0x1278,
(short) 0x0FD0, (short) 0x0CA8, (short) 0x0D50, (short) 0x0D10,
(short) 0x0798, (short) 0x0398, (short) 0x0428, (short) 0x04F0,
(short) 0x0278, (short) 0xFF98, (short) 0x0178, (short) 0x0088,
(short) 0xFB08, (short) 0xF660, (short) 0xF1A8, (short) 0xEF18,
(short) 0xF9E8, (short) 0x0C00, (short) 0x11C8, (short) 0x1260,
(short) 0x1B60, (short) 0x21B0, (short) 0x18E0, (short) 0x0B08,
(short) 0x04C8, (short) 0x0078, (short) 0xF730, (short) 0xEF60,
(short) 0xEB18, (short) 0xEC10, (short) 0xF290, (short) 0xF800,
(short) 0xFB60, (short) 0xFF60, (short) 0x0080, (short) 0xFFA8,
(short) 0xFB08, (short) 0xF1A8, (short) 0xED10, (short) 0xEFF0,
(short) 0xEED0, (short) 0xEB10, (short) 0xEFE8, (short) 0xF8F0,
(short) 0xFDE0, (short) 0x0298, (short) 0x0528, (short) 0x0598,
(short) 0x0928, (short) 0x0A30, (short) 0x0670, (short) 0x08E8,
(short) 0x0BC0, (short) 0x0698, (short) 0x0210, (short) 0x0390,
(short) 0x0560, (short) 0x0288, (short) 0xF910, (short) 0xF468,
(short) 0xF560, (short) 0xF3E0, (short) 0xEE10, (short) 0xE8B0,
(short) 0xE508, (short) 0xEED0, (short) 0x03E0, (short) 0x0638,
(short) 0xFFA8, (short) 0x0BB8, (short) 0x2078, (short) 0x1FA8,
(short) 0x0EF0, (short) 0x0648, (short) 0x05C8, (short) 0xFF18,
(short) 0xF588, (short) 0xEE20, (short) 0xED88, (short) 0xF5A0,
(short) 0xFBA8, (short) 0xFBC0, (short) 0xFA98, (short) 0xFA20,
(short) 0xF7D8, (short) 0xF2D0, (short) 0xEF48, (short) 0xE998,
(short) 0xE378, (short) 0xE530, (short) 0xE868, (short) 0xE890,
(short) 0xEDD0, (short) 0xF798, (short) 0xFBC0, (short) 0xFD20,
(short) 0x0178, (short) 0x0490, (short) 0x04A0, (short) 0x0758,
(short) 0x0858, (short) 0x0490, (short) 0x04F8, (short) 0x0858,
(short) 0x06F0, (short) 0x05F8, (short) 0x0450, (short) 0x0098,
(short) 0xFE60, (short) 0xFDA0, (short) 0xF9E0, (short) 0xF358,
(short) 0xEDC0, (short) 0xF308, (short) 0xFFE0, (short) 0x0018,
(short) 0xFB80, (short) 0x0948, (short) 0x1DB8, (short) 0x1D08,
(short) 0x0F88, (short) 0x0B48, (short) 0x0C50, (short) 0x09C0,
(short) 0xFF78, (short) 0xF1A0, (short) 0xEF28, (short) 0xF6B8,
(short) 0xF9F0, (short) 0xF6F0, (short) 0xF688, (short) 0xF9E0,
(short) 0xF9C0, (short) 0xF4C8, (short) 0xEBD8, (short) 0xE7E8,
(short) 0xEBE0, (short) 0xE8C8, (short) 0xE100, (short) 0xE518,
(short) 0xF0B8, (short) 0xF728, (short) 0xF770, (short) 0xF878,
(short) 0xFF58, (short) 0x06B0, (short) 0x0430, (short) 0x0060,
(short) 0x0390, (short) 0x0A18, (short) 0x0B98, (short) 0x06C8,
(short) 0x0710, (short) 0x0CF0, (short) 0x08D0, (short) 0x01F8,
(short) 0x0280, (short) 0x0238, (short) 0xFD78, (short) 0xF868,
(short) 0xF198, (short) 0xF670, (short) 0x0930, (short) 0x0A78,
(short) 0xFB38, (short) 0x04F0, (short) 0x1EB8, (short) 0x1E98,
(short) 0x0F68, (short) 0x0EC8, (short) 0x1548, (short) 0x1480,
(short) 0x0C60, (short) 0x00B0, (short) 0xFEF8, (short) 0x0830,
(short) 0x0838, (short) 0x0160, (short) 0x0380, (short) 0x07E8,
(short) 0x0270, (short) 0xFBA0, (short) 0xF9C0, (short) 0xF450,
(short) 0xEE08, (short) 0xED08, (short) 0xEE10, (short) 0xEF20,
(short) 0xF1C0, (short) 0xF800, (short) 0xFE70, (short) 0x00B0,
(short) 0x02D8, (short) 0x07C8, (short) 0x09F0, (short) 0x09A8,
(short) 0x0A60, (short) 0x0B28, (short) 0x0C80, (short) 0x0D58,
(short) 0x0BD0, (short) 0x0A48, (short) 0x0900, (short) 0x0768,
(short) 0x03D0, (short) 0x00E0, (short) 0xFFF8, (short) 0xFBD8,
(short) 0xF5E8, (short) 0xFE18, (short) 0x0FE8, (short) 0x1060,
(short) 0x05C8, (short) 0x1078, (short) 0x2638, (short) 0x2580,
(short) 0x1740, (short) 0x14E8, (short) 0x19D0, (short) 0x17D8,
(short) 0x0E10, (short) 0x0270, (short) 0x0120, (short) 0x0900,
(short) 0x0870, (short) 0x0290, (short) 0x03A0, (short) 0x0600,
(short) 0x0100, (short) 0xFE28, (short) 0xFF28, (short) 0xF838,
(short) 0xF0B8, (short) 0xF238, (short) 0xF530, (short) 0xF440,
(short) 0xF440, (short) 0xFA38, (short) 0x0198, (short) 0x03A8,
(short) 0x03D0, (short) 0x0780, (short) 0x0AB8, (short) 0x0B58,
(short) 0x0B10, (short) 0x0AD8, (short) 0x0A08, (short) 0x0878,
(short) 0x07C8, (short) 0x0648, (short) 0x01A0, (short) 0xFF48,
(short) 0xFE58, (short) 0xFA68, (short) 0xF7D0, (short) 0xF758,
(short) 0xF470, (short) 0xF5B0, (short) 0x02A8, (short) 0x0A58,
(short) 0x0448, (short) 0x07C8, (short) 0x1708, (short) 0x1970,
(short) 0x0EC8, (short) 0x0A40, (short) 0x0CD0, (short) 0x0D28,
(short) 0x0838, (short) 0x0010, (short) 0xFAE0, (short) 0xFCB0,
(short) 0xFEB8, (short) 0xFCE8, (short) 0xFBA8, (short) 0xFD10,
(short) 0xFBC8, (short) 0xF910, (short) 0xF960, (short) 0xF830,
(short) 0xF4D8, (short) 0xF500, (short) 0xF860, (short) 0xF9F0,
(short) 0xFB58, (short) 0xFE48, (short) 0x0050, (short) 0x0418,
(short) 0x0910, (short) 0x0940, (short) 0x0830, (short) 0x0AC8,
(short) 0x0C88, (short) 0x0A50, (short) 0x07C0, (short) 0x0700,
(short) 0x0590, (short) 0x0268, (short) 0xFFF0, (short) 0xFBA8,
(short) 0xF720, (short) 0xF698, (short) 0xF2E0, (short) 0xEB68,
(short) 0xEDA0, (short) 0xFC00, (short) 0x0358, (short) 0xFF30,
(short) 0x0398, (short) 0x1220, (short) 0x1860, (short) 0x1368,
(short) 0x10C0, (short) 0x12F0, (short) 0x12A0, (short) 0x0E08,
(short) 0x0780, (short) 0x0010, (short) 0xFAD8, (short) 0xF990,
(short) 0xF7E0, (short) 0xF278, (short) 0xEE10, (short) 0xEB98,
(short) 0xE7A0, (short) 0xE6F8, (short) 0xEA30, (short) 0xE980,
(short) 0xE420, (short) 0xE440, (short) 0xEBA8, (short) 0xEF98,
(short) 0xEF68, (short) 0xF288, (short) 0xF7A8, (short) 0xFC90,
(short) 0x01F8, (short) 0x0528, (short) 0x0630, (short) 0x08E8,
(short) 0x0C98, (short) 0x0D50, (short) 0x0B98, (short) 0x0920,
(short) 0x0678, (short) 0x03F0, (short) 0x0260, (short) 0xFE00,
(short) 0xF810, (short) 0xF4B8, (short) 0xF0C0, (short) 0xEB68,
(short) 0xEF58, (short) 0xFAE8, (short) 0xFDE0, (short) 0xF680,
(short) 0xF910, (short) 0x06E0, (short) 0x0C20, (short) 0x05D8,
(short) 0x0408, (short) 0x05C8, (short) 0x0450, (short) 0x02D0,
(short) 0x0128, (short) 0xFB78, (short) 0xF668, (short) 0xF430,
(short) 0xF150, (short) 0xED90, (short) 0xE870, (short) 0xE448,
(short) 0xE2E0, (short) 0xE048, (short) 0xDDD0, (short) 0xDF08,
(short) 0xE0E0, (short) 0xE098, (short) 0xE258, (short) 0xE520,
(short) 0xE6A8, (short) 0xEA28, (short) 0xEF88, (short) 0xF2A8,
(short) 0xF548, (short) 0xFBA8, (short) 0x01C8, (short) 0x03F8,
(short) 0x0748, (short) 0x0C88, (short) 0x0E98, (short) 0x0DB8,
(short) 0x0D98, (short) 0x0D50, (short) 0x0B68, (short) 0x0970,
(short) 0x06C0, (short) 0x0238, (short) 0xFE18, (short) 0xFB08,
(short) 0xF820, (short) 0xF780, (short) 0xF970, (short) 0xF9B0,
(short) 0xF880, (short) 0xFA28, (short) 0x0028, (short) 0x0698,
(short) 0x0948, (short) 0x08D0, (short) 0x09E0, (short) 0x0DD0,
(short) 0x1010, (short) 0x0D40, (short) 0x0958, (short) 0x0728,
(short) 0x0308, (short) 0xFDA0, (short) 0xF9F8, (short) 0xF418,
(short) 0xEC98, (short) 0xE8B8, (short) 0xE618, (short) 0xE200,
(short) 0xDED0, (short) 0xDF48, (short) 0xE100, (short) 0xE180,
(short) 0xE160, (short) 0xE3C8, (short) 0xE898, (short) 0xEDD8,
(short) 0xF250, (short) 0xF558, (short) 0xFB00, (short) 0x02F8,
(short) 0x07B0, (short) 0x0B80, (short) 0x1108, (short) 0x1518,
(short) 0x1660, (short) 0x1770, (short) 0x1870, (short) 0x16F8,
(short) 0x1300, (short) 0x0F78, (short) 0x0FC0, (short) 0x1070,
(short) 0x0CE8, (short) 0x0AF8, (short) 0x0BD8, (short) 0x0D28,
(short) 0x10A8, (short) 0x1370, (short) 0x10A0, (short) 0x1040,
(short) 0x1518, (short) 0x1740, (short) 0x1550, (short) 0x1398,
(short) 0x10E0, (short) 0x0AC8, (short) 0x0640, (short) 0x0348,
(short) 0xFD18, (short) 0xF658, (short) 0xF1D8, (short) 0xEC20,
(short) 0xE760, (short) 0xE550, (short) 0xE4B8, (short) 0xE418,
(short) 0xE438, (short) 0xE508, (short) 0xE738, (short) 0xEB18,
(short) 0xF0C8, (short) 0xF618, (short) 0xF988, (short) 0xFEC8,
(short) 0x0518, (short) 0x09D8, (short) 0x1118, (short) 0x17F0,
(short) 0x1BB0, (short) 0x1E28, (short) 0x2120, (short) 0x23D8,
(short) 0x2638, (short) 0x2418, (short) 0x2080, (short) 0x1D30,
(short) 0x1CE8, (short) 0x1D98, (short) 0x1CA8, (short) 0x1AD8,
(short) 0x1960, (short) 0x17F8, (short) 0x1A40, (short) 0x1CF8,
(short) 0x1D38, (short) 0x1C30, (short) 0x1A68, (short) 0x1860,
(short) 0x1480, (short) 0x1020, (short) 0x0B68, (short) 0x03E8,
(short) 0xFBA8, (short) 0xF508, (short) 0xEE40, (short) 0xE820,
(short) 0xE338, (short) 0xDE88, (short) 0xDA30, (short) 0xD7D0,
(short) 0xD728, (short) 0xD7D8, (short) 0xD998, (short) 0xDC10,
(short) 0xDFB0, (short) 0xE470, (short) 0xE948, (short) 0xEF98,
(short) 0xF5F0, (short) 0xFC38, (short) 0x0228, (short) 0x0798,
(short) 0x0D98, (short) 0x1320, (short) 0x1760, (short) 0x1A70,
(short) 0x1BE0, (short) 0x1CC0, (short) 0x1D98, (short) 0x1A88,
(short) 0x1658, (short) 0x12A0, (short) 0x1180, (short) 0x10A8,
(short) 0x0ED0, (short) 0x0CC8, (short) 0x0AD8, (short) 0x0920,
(short) 0x0B70, (short) 0x0E30, (short) 0x0EE8, (short) 0x0D80,
(short) 0x0BE0, (short) 0x0AC0, (short) 0x09B8, (short) 0x0890,
(short) 0x0690, (short) 0x01F8, (short) 0xFD30, (short) 0xF9F0,
(short) 0xF5B0, (short) 0xF188, (short) 0xEE38, (short) 0xE9E8,
(short) 0xE5E8, (short) 0xE3E0, (short) 0xE4A0, (short) 0xE608,
(short) 0xE738, (short) 0xE858, (short) 0xE980, (short) 0xEC20,
(short) 0xF030, (short) 0xF450, (short) 0xF878, (short) 0xFC68,
(short) 0xFF68, (short) 0x03C8, (short) 0x08B8, (short) 0x0D00,
(short) 0x1038, (short) 0x12D8, (short) 0x1490, (short) 0x1648,
(short) 0x16B8, (short) 0x1468, (short) 0x1160, (short) 0x0FA8,
(short) 0x1038, (short) 0x1058, (short) 0x0F88, (short) 0x0E50,
(short) 0x0CC8, (short) 0x0CC0, (short) 0x0FC0, (short) 0x1220,
(short) 0x12A0, (short) 0x10F8, (short) 0x0F20, (short) 0x0D28,
(short) 0x0C78, (short) 0x0BB8, (short) 0x08D0, (short) 0x01C8,
(short) 0xFB38, (short) 0xF660, (short) 0xF330, (short) 0xF078,
(short) 0xEC28, (short) 0xE6C8, (short) 0xE2C0, (short) 0xE050,
(short) 0xDFC8, (short) 0xE038, (short) 0xE160, (short) 0xE300,
(short) 0xE568, (short) 0xE6B8, (short) 0xE9A0, (short) 0xED50,
(short) 0xF238, (short) 0xF6D8, (short) 0xFB08, (short) 0xFF10,
(short) 0x02E8, (short) 0x06A0, (short) 0x0AC0, (short) 0x0DC8,
(short) 0x1010, (short) 0x1168, (short) 0x1018, (short) 0x0E90,
(short) 0x0BF8, (short) 0x0B08, (short) 0x0A50, (short) 0x09F0,
(short) 0x0960, (short) 0x0888, (short) 0x0808, (short) 0x09C8,
(short) 0x0BA8, (short) 0x0EE8, (short) 0x1070, (short) 0x10D0,
(short) 0x0F58, (short) 0x0D60, (short) 0x0BA0, (short) 0x0A60,
(short) 0x08F0, (short) 0x0608, (short) 0xFFB0, (short) 0xF938,
(short) 0xF360, (short) 0xF030, (short) 0xEE20, (short) 0xEB70,
(short) 0xE7A8, (short) 0xE410, (short) 0xE140, (short) 0xDFC8,
(short) 0xDFF8, (short) 0xE1F0, (short) 0xE448, (short) 0xE6D0,
(short) 0xE780, (short) 0xE9E8, (short) 0xECF0, (short) 0xF248,
(short) 0xF730, (short) 0xFBC0, (short) 0xFF80, (short) 0x0310,
(short) 0x0670, (short) 0x0A98, (short) 0x0D88, (short) 0x0FD8,
(short) 0x10C0, (short) 0x0EB0, (short) 0x0C48, (short) 0x08B8,
(short) 0x0998, (short) 0x0AC0, (short) 0x0C68, (short) 0x0B78,
(short) 0x09C8, (short) 0x0838, (short) 0x08F8, (short) 0x0A80,
(short) 0x0CA0, (short) 0x0E10, (short) 0x0E48, (short) 0x0D58,
(short) 0x0A28, (short) 0x0750, (short) 0x04F0, (short) 0x0228,
(short) 0xFEE8, (short) 0xFA80, (short) 0xF468, (short) 0xEED0,
(short) 0xEAE0, (short) 0xE8B8, (short) 0xE718, (short) 0xE5B0,
(short) 0xE4A8, (short) 0xE410, (short) 0xE480, (short) 0xE548,
(short) 0xE738, (short) 0xE9B0, (short) 0xED80, (short) 0xF0B8,
(short) 0xF480, (short) 0xF7B0, (short) 0xFB70, (short) 0xFED0,
(short) 0x0328, (short) 0x0720, (short) 0x0A98, (short) 0x0E00,
(short) 0x10F8, (short) 0x12E0, (short) 0x12A8, (short) 0x11B0,
(short) 0x0F58, (short) 0x0F38, (short) 0x0E88, (short) 0x0F08,
(short) 0x0FC0, (short) 0x0FF0, (short) 0x10B8, (short) 0x1138,
(short) 0x1198, (short) 0x13D0, (short) 0x1638, (short) 0x17E8,
(short) 0x1758, (short) 0x1628, (short) 0x1460, (short) 0x10E8,
(short) 0x0CA0, (short) 0x0848, (short) 0x0280, (short) 0xFC90,
(short) 0xF700, (short) 0xF0F8, (short) 0xEB18, (short) 0xE638,
(short) 0xE1B8, (short) 0xDE78, (short) 0xDC58, (short) 0xDBB8,
(short) 0xDC28, (short) 0xDDB0, (short) 0xE030, (short) 0xE330,
(short) 0xE6F0, (short) 0xEC20, (short) 0xF210, (short) 0xF7C0,
(short) 0xFCE0, (short) 0x0150, (short) 0x0570, (short) 0x08F0,
(short) 0x0C70, (short) 0x0F50, (short) 0x12B8, (short) 0x1560,
(short) 0x16E0, (short) 0x1630, (short) 0x14E8, (short) 0x1298,
(short) 0x11B8, (short) 0x1170, (short) 0x11B8, (short) 0x11C0,
(short) 0x0FE8, (short) 0x0E58, (short) 0x0CB8, (short) 0x0C50,
(short) 0x0D68, (short) 0x0E98, (short) 0x0E30, (short) 0x0C28,
(short) 0x0A10, (short) 0x06D8, (short) 0x02E0, (short) 0xFEA0,
(short) 0xFA18, (short) 0xF4E8, (short) 0xF018, (short) 0xEB68,
(short) 0xE6E8, (short) 0xE310, (short) 0xDFC8, (short) 0xDD38,
(short) 0xDBF8, (short) 0xDC38, (short) 0xDDD0, (short) 0xE070,
(short) 0xE390, (short) 0xE760, (short) 0xEB88, (short) 0xEF20,
(short) 0xF378, (short) 0xF830, (short) 0xFCE0, (short) 0x00F8,
(short) 0x0480, (short) 0x0768, (short) 0x0968, (short) 0x0AE0,
(short) 0x0BB8, (short) 0x0C10, (short) 0x0BB0, (short) 0x0A78,
(short) 0x08E0, (short) 0x06E8, (short) 0x0540, (short) 0x0870,
(short) 0x0BE0, (short) 0x0ED0, (short) 0x0E40, (short) 0x0D10,
(short) 0x0CC8, (short) 0x0E28, (short) 0x0FA0, (short) 0x0FB0,
(short) 0x0F18, (short) 0x0DD0, (short) 0x0BC8, (short) 0x08E8,
(short) 0x0628, (short) 0x0300, (short) 0xFF18, (short) 0xFB40,
(short) 0xF780, (short) 0xF388, (short) 0xF028, (short) 0xED80,
(short) 0xEB18, (short) 0xE968, (short) 0xE8C0, (short) 0xE738,
(short) 0xE658, (short) 0xE698, (short) 0xE888, (short) 0xEB38,
(short) 0xEDA0, (short) 0xF178, (short) 0xF5B8, (short) 0xFA28,
(short) 0xFEA8, (short) 0x0300, (short) 0x06C8, (short) 0x0960,
(short) 0x0B70, (short) 0x0CE0, (short) 0x0D70, (short) 0x0D50,
(short) 0x0C60, (short) 0x0890, (short) 0x0418, (short) 0x0028,
(short) 0x01D0, (short) 0x03F8, (short) 0x05A8, (short) 0x0700,
(short) 0x0808, (short) 0x09A0, (short) 0x0B18, (short) 0x0CC8,
(short) 0x0D90, (short) 0x0E68, (short) 0x0EC0, (short) 0x0E30,
(short) 0x0C28, (short) 0x09D8, (short) 0x0730, (short) 0x0308,
(short) 0xFED8, (short) 0xFAC0, (short) 0xF598, (short) 0xF0D8,
(short) 0xECE0, (short) 0xEAA8, (short) 0xE948, (short) 0xE8D0,
(short) 0xE850, (short) 0xE888, (short) 0xE910, (short) 0xEAD0,
(short) 0xED68, (short) 0xF018, (short) 0xF350, (short) 0xF6B8,
(short) 0xFAE0, (short) 0xFF00, (short) 0x02D8, (short) 0x05E8,
(short) 0x0830, (short) 0x09F8, (short) 0x0B08, (short) 0x0B80,
(short) 0x0B60, (short) 0x0988, (short) 0x0648, (short) 0x02D0,
(short) 0x0150, (short) 0x01E8, (short) 0x0270, (short) 0x03E0,
(short) 0x0538, (short) 0x0658, (short) 0x0918, (short) 0x0C00,
(short) 0x0E88, (short) 0x10B8, (short) 0x12A0, (short) 0x13E0,
(short) 0x1488, (short) 0x1448, (short) 0x1368, (short) 0x1120,
(short) 0x0DD0, (short) 0x0A40, (short) 0x0608, (short) 0x0148,
(short) 0xFC80, (short) 0xF860, (short) 0xF4D8, (short) 0xF1C0,
(short) 0xF008, (short) 0xEF38, (short) 0xEE78, (short) 0xEE98,
(short) 0xEF90, (short) 0xF170, (short) 0xF390, (short) 0xF5C0,
(short) 0xF888, (short) 0xFB48, (short) 0xFDF0, (short) 0x0078,
(short) 0x03D0, (short) 0x06C8, (short) 0x08F8, (short) 0x0AA0,
(short) 0x0BC8, (short) 0x0C48, (short) 0x0B30, (short) 0x0978,
(short) 0x06A8, (short) 0x0530, (short) 0x03F0, (short) 0x0438,
(short) 0x03C0, (short) 0x0350, (short) 0x0360, (short) 0x04E8,
(short) 0x0698, (short) 0x07D0, (short) 0x08D0, (short) 0x0998,
(short) 0x0A70, (short) 0x0B48, (short) 0x0B70, (short) 0x0AD0,
(short) 0x09C0, (short) 0x0890, (short) 0x0730, (short) 0x0588,
(short) 0x0358, (short) 0x0140, (short) 0xFF58, (short) 0xFD40,
(short) 0xFB68, (short) 0xF9E8, (short) 0xF828, (short) 0xF6D0,
(short) 0xF608, (short) 0xF5D8, (short) 0xF610, (short) 0xF668,
(short) 0xF778, (short) 0xF8E8, (short) 0xFA48, (short) 0xFCC8,
(short) 0xFF50, (short) 0x01C8, (short) 0x0428, (short) 0x0640,
(short) 0x07D0, (short) 0x09D0, (short) 0x0B40, (short) 0x0BF8,
(short) 0x0C30, (short) 0x0C08, (short) 0x0B08, (short) 0x0988,
(short) 0x07C0, (short) 0x0670, (short) 0x0608, (short) 0x0590,
(short) 0x0588, (short) 0x05B0, (short) 0x05E0, (short) 0x06B8,
(short) 0x0748, (short) 0x0758, (short) 0x0700, (short) 0x06A8,
(short) 0x0620, (short) 0x05D8, (short) 0x0590, (short) 0x0528,
(short) 0x03A8, (short) 0x0240, (short) 0x0108, (short) 0xFF38,
(short) 0xFD50, (short) 0xFBA0, (short) 0xFA38, (short) 0xF920,
(short) 0xF860, (short) 0xF6E8, (short) 0xF640, (short) 0xF628,
(short) 0xF680, (short) 0xF720, (short) 0xF800, (short) 0xF8E0,
(short) 0xF9A0, (short) 0xFA78, (short) 0xFB88, (short) 0xFD20,
(short) 0xFEA0, (short) 0x0008, (short) 0x0110, (short) 0x0200,
(short) 0x0360, (short) 0x04E0, (short) 0x0608, (short) 0x0738,
(short) 0x0838, (short) 0x08D8, (short) 0x0828, (short) 0x0738,
(short) 0x0600, (short) 0x04A8, (short) 0x02E0, (short) 0x0130,
(short) 0xFFA0, (short) 0xFF48, (short) 0xFF10, (short) 0xFEF0,
(short) 0xFF30, (short) 0xFFD0, (short) 0x0090, (short) 0x0090,
(short) 0x0070, (short) 0x0060, (short) 0xFFE8, (short) 0xFF50,
(short) 0xFEB8, (short) 0xFE98, (short) 0xFE88, (short) 0xFE80,
(short) 0xFE58, (short) 0xFE50, (short) 0xFE58, (short) 0xFDB0,
(short) 0xFD08, (short) 0xFC80, (short) 0xFAF8, (short) 0xF988,
(short) 0xF860, (short) 0xF798, (short) 0xF720, (short) 0xF6E8,
(short) 0xF728, (short) 0xF7C0, (short) 0xF8A8, (short) 0xF8F8,
(short) 0xF960, (short) 0xFA18, (short) 0xFAC0, (short) 0xFB58,
(short) 0xFC18, (short) 0xFCE0, (short) 0xFDA0, (short) 0xFE20,
(short) 0xFE88, (short) 0xFEF8, (short) 0xFEF0, (short) 0xFEC8,
(short) 0xFEA8, (short) 0xFDE0, (short) 0xFD10, (short) 0xFC70,
(short) 0xFBA8, (short) 0xFB10, (short) 0xFAB8, (short) 0xFAA0,
(short) 0xFAD0, (short) 0xFB18, (short) 0xFA90, (short) 0xFA18,
(short) 0xFA10, (short) 0xFA80, (short) 0xFB10, (short) 0xFB88,
(short) 0xFC90, (short) 0xFDB8, (short) 0xFEB8, (short) 0xFF80,
(short) 0x0058, (short) 0x0138, (short) 0x0118, (short) 0x00C8,
(short) 0x00C0, (short) 0xFF98, (short) 0xFE30, (short) 0xFD38,
(short) 0xFC68, (short) 0xFB78, (short) 0xFAB8, (short) 0xFAE8,
(short) 0xFB78, (short) 0xFBD0, (short) 0xFBE8, (short) 0xFC18,
(short) 0xFC98, (short) 0xFD28, (short) 0xFD48, (short) 0xFD68,
(short) 0xFD68, (short) 0xFD90, (short) 0xFDB8, (short) 0xFD90,
(short) 0xFD68, (short) 0xFD78, (short) 0xFCA0, (short) 0xFB70,
(short) 0xFAD0, (short) 0xF9F0, (short) 0xF870, (short) 0xF748,
(short) 0xF748, (short) 0xF770, (short) 0xF748, (short) 0xF720,
(short) 0xF7A8, (short) 0xF878, (short) 0xF930, (short) 0xF998,
(short) 0xFA38, (short) 0xFC10, (short) 0xFDA0, (short) 0xFE70,
(short) 0x0030, (short) 0x0248, (short) 0x03A0, (short) 0x0568,
(short) 0x0738, (short) 0x0870, (short) 0x0960, (short) 0x0A10,
(short) 0x0A40, (short) 0x0A28, (short) 0x09B8, (short) 0x08E8,
(short) 0x07E8, (short) 0x06E0, (short) 0x0588, (short) 0x0430,
(short) 0x0300, (short) 0x0260, (short) 0x01D0, (short) 0x0118,
(short) 0xFFB0, (short) 0xFE98, (short) 0xFE18, (short) 0xFDA0,
(short) 0xFD08, (short) 0xFCB8, (short) 0xFCF8, (short) 0xFD60,
(short) 0xFD90, (short) 0xFD90, (short) 0xFDD8, (short) 0xFE50,
(short) 0xFDA0, (short) 0xFCE0, (short) 0xFCC0, (short) 0xFCE8,
(short) 0xFCB0, (short) 0xFC60, (short) 0xFC70, (short) 0xFCB8,
(short) 0xFCE0, (short) 0xFD40, (short) 0xFDD8, (short) 0xFE68,
(short) 0xFF78, (short) 0x0068, (short) 0x0108, (short) 0x0278,
(short) 0x03A0, (short) 0x0420, (short) 0x0590, (short) 0x0708,
(short) 0x07B8, (short) 0x07D8, (short) 0x0808, (short) 0x0838,
(short) 0x07D8, (short) 0x06E8, (short) 0x0600, (short) 0x05B0,
(short) 0x0518, (short) 0x0410, (short) 0x02A0, (short) 0x0198,
(short) 0x00D0, (short) 0x00C8, (short) 0x00B0, (short) 0x0068,
(short) 0x00C0, (short) 0x0150, (short) 0x0180, (short) 0x0220,
(short) 0x02D8, (short) 0x0340, (short) 0x0360, (short) 0x0380,
(short) 0x0380, (short) 0x0338, (short) 0x02C8, (short) 0x02B8,
(short) 0x0280, (short) 0x0200, (short) 0x0100, (short) 0x0098,
(short) 0x0080, (short) 0x0020, (short) 0xFFF0, (short) 0x0000,
(short) 0x0020, (short) 0x0098, (short) 0x0120, (short) 0x0170,
(short) 0x0230, (short) 0x02F0, (short) 0x0350, (short) 0x0480,
(short) 0x05B8, (short) 0x0650, (short) 0x06A8, (short) 0x0738,
(short) 0x0798, (short) 0x07B0, (short) 0x07C0, (short) 0x0798,
(short) 0x0668, (short) 0x0598, (short) 0x0530, (short) 0x04C8,
(short) 0x0410, (short) 0x0350, (short) 0x0278, (short) 0x01D8,
(short) 0x0148, (short) 0x0080, (short) 0x0000, (short) 0xFFC0,
(short) 0xFFD8, (short) 0xFFA8, (short) 0xFF60, (short) 0xFF80,
(short) 0x0018, (short) 0x0070, (short) 0xFFE0, (short) 0xFF88,
(short) 0xFFC0, (short) 0xFF38, (short) 0xFE98, (short) 0xFE50,
(short) 0xFE10, (short) 0xFDD8, (short) 0xFD90, (short) 0xFD30,
(short) 0xFDB8, (short) 0xFE68, (short) 0xFE70, (short) 0xFE60,
(short) 0xFE70, (short) 0xFED0, (short) 0xFF90, (short) 0xFFE0,
(short) 0xFFF0, (short) 0x00A8, (short) 0x0168, (short) 0x01D0,
(short) 0x01F8, (short) 0x0210, (short) 0x0278, (short) 0x0268,
(short) 0x0208, (short) 0x0220, (short) 0x01F8, (short) 0x0198,
(short) 0x0158, (short) 0x0100, (short) 0x00C0, (short) 0x00A0,
(short) 0x0018, (short) 0xFF98, (short) 0xFF28, (short) 0xFEC0,
(short) 0xFE80, (short) 0xFE60, (short) 0xFD88, (short) 0xFCF0,
(short) 0xFCC8, (short) 0xFC70, (short) 0xFC10, (short) 0xFBC8,
(short) 0xFBB0, (short) 0xFBE8, (short) 0xFBE8, (short) 0xFB80,
(short) 0xFB88, (short) 0xFB40, (short) 0xFB18, (short) 0xFB20,
(short) 0xFAB8, (short) 0xFA50, (short) 0xFA50, (short) 0xFAB8,
(short) 0xFAF8, (short) 0xFB18, (short) 0xFBB0, (short) 0xFC88,
(short) 0xFD10, (short) 0xFD40, (short) 0xFD98, (short) 0xFE38,
(short) 0xFEE0, (short) 0xFEF8, (short) 0xFEF0, (short) 0xFF18,
(short) 0xFF18, (short) 0xFF18, (short) 0xFF68, (short) 0xFF98,
(short) 0xFF98, (short) 0xFFD0, (short) 0xFFF8, (short) 0x0048,
(short) 0x0038, (short) 0x0008, (short) 0x0008, (short) 0xFFE0,
(short) 0xFFB0, (short) 0xFFB8, (short) 0xFED0, (short) 0xFE18,
(short) 0xFE18, (short) 0xFDF0, (short) 0xFE38, (short) 0xFE90,
(short) 0xFE90, (short) 0xFDA8, (short) 0xFD48, (short) 0xFD70,
(short) 0xFD68, (short) 0xFD00, (short) 0xFCB8, (short) 0xFCB8,
(short) 0xFCF8, (short) 0xFD00, (short) 0xFC30, (short) 0xFBD0,
(short) 0xFC10, (short) 0xFC20, (short) 0xFBE0, (short) 0xFBA8,
(short) 0xFC30, (short) 0xFD00, (short) 0xFD50, (short) 0xFD90,
(short) 0xFE10, (short) 0xFEA8, (short) 0xFF40, (short) 0xFFA0,
(short) 0xFFD0, (short) 0xFFC8, (short) 0xFFC8, (short) 0xFFD8,
(short) 0xFFA0, (short) 0xFF98, (short) 0xFFB8, (short) 0x0050,
(short) 0x00B8, (short) 0x00B0, (short) 0x01B0, (short) 0x02E0,
(short) 0x0318, (short) 0x0330, (short) 0x02E0, (short) 0x02C8,
(short) 0x0278, (short) 0x0150, (short) 0x0050, (short) 0xFFC0,
(short) 0xFF88, (short) 0xFF18, (short) 0xFE90, (short) 0xFE40,
(short) 0xFE30, (short) 0xFDE8, (short) 0xFDD0, (short) 0xFD70,
(short) 0xFD48, (short) 0xFD10, (short) 0xFC98, (short) 0xFC38,
(short) 0xFC38, (short) 0xFC78, (short) 0xFC98, (short) 0xFCF0,
(short) 0xFDA8, (short) 0xFE48, (short) 0xFEC8, (short) 0xFF30,
(short) 0xFF98, (short) 0x0000, (short) 0x0050, (short) 0x0058,
(short) 0x00A8, (short) 0x00E8, (short) 0x00D0, (short) 0x0138,
(short) 0x01E0, (short) 0x0218, (short) 0x0208, (short) 0x0230,
(short) 0x0258, (short) 0x0248, (short) 0x02B0, (short) 0x0318,
(short) 0x0330, (short) 0x0358, (short) 0x0380, (short) 0x0378,
(short) 0x0408, (short) 0x0480, (short) 0x0460, (short) 0x03C8,
(short) 0x0318, (short) 0x02B0, (short) 0x01E8, (short) 0x00B8,
(short) 0xFFD8, (short) 0xFF30, (short) 0xFEC8, (short) 0xFE60,
(short) 0xFE60, (short) 0xFE78, (short) 0xFE78, (short) 0xFDC0,
(short) 0xFD70, (short) 0xFD50, (short) 0xFD08, (short) 0xFC88,
(short) 0xFC28, (short) 0xFC98, (short) 0xFD18, (short) 0xFD60,
(short) 0xFD60, (short) 0xFDD8, (short) 0xFE90, (short) 0xFEE8,
(short) 0xFF10, (short) 0xFF58, (short) 0xFF90, (short) 0xFFB8,
(short) 0xFFE0, (short) 0xFFF0, (short) 0xFFF0, (short) 0x00D0,
(short) 0x0190, (short) 0x01C8, (short) 0x0180, (short) 0x0188,
(short) 0x01B0, (short) 0x0238, (short) 0x0298, (short) 0x02B8,
(short) 0x0268, (short) 0x0258, (short) 0x0258, (short) 0x0230,
(short) 0x0228, (short) 0x0230, (short) 0x0258, (short) 0x0248,
(short) 0x01F8, (short) 0x0150, (short) 0x00C8, (short) 0x0058,
(short) 0x0058, (short) 0x0038, (short) 0x0000, (short) 0xFF50,
(short) 0xFF00, (short) 0xFEF8, (short) 0xFE80, (short) 0xFDB8,
(short) 0xFD70, (short) 0xFD00, (short) 0xFC90, (short) 0xFC40,
(short) 0xFC28, (short) 0xFC58, (short) 0xFC98, (short) 0xFD10,
(short) 0xFD78, (short) 0xFDE0, (short) 0xFE80, (short) 0xFF08,
(short) 0xFF60, (short) 0xFFD0, (short) 0x0030, (short) 0x0068,
(short) 0x0110, (short) 0x0198, (short) 0x01C0, (short) 0x0208,
(short) 0x0260, (short) 0x0280, (short) 0x0320, (short) 0x0390,
(short) 0x0398, (short) 0x0410, (short) 0x0488, (short) 0x04A0,
(short) 0x0448, (short) 0x0408, (short) 0x03E0, (short) 0x03C8,
(short) 0x0398, (short) 0x0350, (short) 0x0308, (short) 0x02C8,
(short) 0x0278, (short) 0x01D8, (short) 0x0148, (short) 0x00E8,
(short) 0x0040, (short) 0xFFA0, (short) 0xFF50, (short) 0xFDC0,
(short) 0xFC88, (short) 0xFC30, (short) 0xFB88, (short) 0xFAA8,
(short) 0xFA50, (short) 0xFA30, (short) 0xFA40, (short) 0xFA70,
(short) 0xFAB8, (short) 0xFAE0, (short) 0xFB28, (short) 0xFB58,
(short) 0xFB80, (short) 0xFBB0, (short) 0xFC00, (short) 0xFC80,
(short) 0xFCF0, (short) 0xFDB8, (short) 0xFE58, (short) 0xFED8,
(short) 0x0008, (short) 0x0100, (short) 0x0180, (short) 0x01D0,
(short) 0x0210, (short) 0x0248, (short) 0x0238, (short) 0x0200,
(short) 0x01D0, (short) 0x02D0, (short) 0x03A0, (short) 0x03D8,
(short) 0x03C0, (short) 0x03D8, (short) 0x03F8, (short) 0x0370,
(short) 0x02C0, (short) 0x0258, (short) 0x01B8, (short) 0x0120,
(short) 0x0090, (short) 0x0088, (short) 0x00A8, (short) 0x00A8,
(short) 0x0088, (short) 0x0068, (short) 0x0060, (short) 0xFFE0,
(short) 0xFF00, (short) 0xFE50, (short) 0xFDC8, (short) 0xFCF0,
(short) 0xFC30, (short) 0xFBB0, (short) 0xFBD8, (short) 0xFC20,
(short) 0xFC58, (short) 0xFC30, (short) 0xFC40, (short) 0xFC78,
(short) 0xFCC0, (short) 0xFCE8, (short) 0xFD10, (short) 0xFD48,
(short) 0xFD88, (short) 0xFDE8, (short) 0xFF10, (short) 0x0020,
(short) 0x0110, (short) 0x01B8, (short) 0x0248, (short) 0x02C0,
(short) 0x0358, (short) 0x03B8, (short) 0x03C8, (short) 0x0320,
(short) 0x0288, (short) 0x0280, (short) 0x0300, (short) 0x0340,
(short) 0x0320, (short) 0x0380, (short) 0x03F8, (short) 0x0418,
(short) 0x0378, (short) 0x02E0, (short) 0x0288, (short) 0x0280,
(short) 0x0238, (short) 0x01D0, (short) 0x0168, (short) 0x0138,
(short) 0x0110, (short) 0x0140, (short) 0x0148, (short) 0x0150,
(short) 0x00A8, (short) 0x0010, (short) 0xFFB0, (short) 0xFEB8,
(short) 0xFDE0, (short) 0xFD48, (short) 0xFCE8, (short) 0xFCA8,
(short) 0xFC78, (short) 0xFC48, (short) 0xFC50, (short) 0xFC70,
(short) 0xFCA8, (short) 0xFCE8, (short) 0xFD28, (short) 0xFDD0,
(short) 0xFE70, (short) 0xFED8, (short) 0x0040, (short) 0x0188,
(short) 0x0258, (short) 0x03C0, (short) 0x04F0, (short) 0x05B8,
(short) 0x0638, (short) 0x0670, (short) 0x0690, (short) 0x0708,
(short) 0x0708, (short) 0x06B8, (short) 0x0660, (short) 0x0650,
(short) 0x0630, (short) 0x05C8, (short) 0x0578, (short) 0x0548,
(short) 0x0508, (short) 0x0470, (short) 0x03D0, (short) 0x0350,
(short) 0x0278, (short) 0x01A0, (short) 0x00F8, (short) 0x00B0,
(short) 0x0078, (short) 0x0030, (short) 0xFFE8, (short) 0xFFC8,
(short) 0xFFB8, (short) 0xFED0, (short) 0xFE08, (short) 0xFD98,
(short) 0xFC70, (short) 0xFB60, (short) 0xFAA8, (short) 0xFA10,
(short) 0xF9B8, (short) 0xF980, (short) 0xF9A0, (short) 0xFA00,
(short) 0xFA68, (short) 0xFB90, (short) 0xFCB8, (short) 0xFD98,
(short) 0xFE68, (short) 0xFF18, (short) 0xFFC0, (short) 0x0078,
(short) 0x00F8, (short) 0x0218, (short) 0x0320, (short) 0x03C0,
(short) 0x0478, (short) 0x0510, (short) 0x0570, (short) 0x05D8,
(short) 0x05E0, (short) 0x05B8, (short) 0x0508, (short) 0x0468,
(short) 0x03E0, (short) 0x02F0, (short) 0x0218, (short) 0x0168,
(short) 0x00F0, (short) 0x0060, (short) 0xFFD0, (short) 0xFF58,
(short) 0xFEC0, (short) 0xFE48, (short) 0xFDB0, (short) 0xFD58,
(short) 0xFD38, (short) 0xFCD8, (short) 0xFC80, (short) 0xFC50,
(short) 0xFC08, (short) 0xFB48, (short) 0xFA98, (short) 0xF9F8,
(short) 0xF8F8, (short) 0xF810, (short) 0xF7F8, (short) 0xF818,
(short) 0xF848, (short) 0xF8E8, (short) 0xF9E0, (short) 0xFB08,
(short) 0xFC38, (short) 0xFD10, (short) 0xFDE8, (short) 0xFF10,
(short) 0xFFD0, (short) 0x0048, (short) 0x00E0, (short) 0x0160,
(short) 0x01B8, (short) 0x01C8, (short) 0x01E0, (short) 0x0200,
(short) 0x0228, (short) 0x0240, (short) 0x0240, (short) 0x0240,
(short) 0x0260, (short) 0x0280, (short) 0x0280, (short) 0x02F0,
(short) 0x0370, (short) 0x03C8, (short) 0x03C8, (short) 0x03A8,
(short) 0x03A0, (short) 0x02F8, (short) 0x0220, (short) 0x0150,
(short) 0x0098, (short) 0xFFE0, (short) 0xFF20, (short) 0xFEA0,
(short) 0xFE50, (short) 0xFE18, (short) 0xFD38, (short) 0xFC60,
(short) 0xFBE0, (short) 0xFAC8, (short) 0xF9A0, (short) 0xF8B8,
(short) 0xF830, (short) 0xF888, (short) 0xF8B8, (short) 0xF908,
(short) 0xFA80, (short) 0xFBF8, (short) 0xFD48, (short) 0xFEC8,
(short) 0x0040, (short) 0x01B0, (short) 0x0298, (short) 0x0338,
(short) 0x03C0, (short) 0x0470, (short) 0x0520, (short) 0x0588,
(short) 0x0610, (short) 0x0688, (short) 0x06C8, (short) 0x0670,
(short) 0x05E8, (short) 0x0578, (short) 0x0580, (short) 0x0578,
(short) 0x0528, (short) 0x0498, (short) 0x0408, (short) 0x0390,
(short) 0x03F8, (short) 0x0458, (short) 0x0488, (short) 0x0468,
(short) 0x0450, (short) 0x0458, (short) 0x03A8, (short) 0x02D0,
(short) 0x0210, (short) 0x0158, (short) 0x0088, (short) 0xFFA8,
(short) 0xFF00, (short) 0xFE88, (short) 0xFE30, (short) 0xFD88,
(short) 0xFCB8, (short) 0xFC28, (short) 0xFB30, (short) 0xF9F0,
(short) 0xF8E8, (short) 0xF890, (short) 0xF890, (short) 0xF8C0,
(short) 0xF978, (short) 0xFA78, (short) 0xFBE8, (short) 0xFD20,
(short) 0xFE28, (short) 0xFF60, (short) 0x00D8, (short) 0x0220,
(short) 0x02F8, (short) 0x0378, (short) 0x03E0, (short) 0x0438,
(short) 0x0488, (short) 0x0498, (short) 0x04A8, (short) 0x0480,
(short) 0x0440, (short) 0x03C0, (short) 0x02D8, (short) 0x01E8,
(short) 0x0140, (short) 0x00D8, (short) 0x0068, (short) 0xFFE0,
(short) 0x0068, (short) 0x0130, (short) 0x0228, (short) 0x0260,
(short) 0x0278, (short) 0x02D0, (short) 0x02D8, (short) 0x0290,
(short) 0x01E0, (short) 0x00D0, (short) 0xFFE0, (short) 0xFEF8,
(short) 0xFE08, (short) 0xFD28, (short) 0xFC88, (short) 0xFBE0,
(short) 0xFB60, (short) 0xFAD8, (short) 0xFA08, (short) 0xF978,
(short) 0xF8E8, (short) 0xF8B0, (short) 0xF8B0, (short) 0xF8D0,
(short) 0xF9D0, (short) 0xFAF8, (short) 0xFC18, (short) 0xFDB0,
(short) 0xFF38, (short) 0x00A0, (short) 0x01F8, (short) 0x02F8,
(short) 0x03C0, (short) 0x0460, (short) 0x04B8, (short) 0x04C8,
(short) 0x04C8, (short) 0x04C0, (short) 0x0498, (short) 0x0490,
(short) 0x0478, (short) 0x0448, (short) 0x0420, (short) 0x03F8,
(short) 0x0328, (short) 0x0238, (short) 0x01B0, (short) 0x0170,
(short) 0x0128, (short) 0x0090, (short) 0x00E8, (short) 0x01B8,
(short) 0x02B8, (short) 0x0280, (short) 0x0218, (short) 0x0218,
(short) 0x01F0, (short) 0x0148, (short) 0x0000, (short) 0xFEC0,
(short) 0xFE08, (short) 0xFD70, (short) 0xFCA0, (short) 0xFBF0,
(short) 0xFBC0, (short) 0xFBA0, (short) 0xFB80, (short) 0xFB18,
(short) 0xFB28, (short) 0xFB98, (short) 0xFBC0, (short) 0xFBD0,
(short) 0xFC08, (short) 0xFC78, (short) 0xFDC8, (short) 0xFEC8,
(short) 0xFF78, (short) 0x00D0, (short) 0x0238, (short) 0x0360,
(short) 0x0398, (short) 0x0360, (short) 0x0368, (short) 0x0380,
(short) 0x0318, (short) 0x0250, (short) 0x0208, (short) 0x0220,
(short) 0x0218, (short) 0x01F0, (short) 0x01C8, (short) 0x0210,
(short) 0x0270, (short) 0x0270, (short) 0x0240, (short) 0x0290,
(short) 0x0310, (short) 0x0360, (short) 0x0340, (short) 0x0310,
(short) 0x0318, (short) 0x0320, (short) 0x02D8, (short) 0x0240,
(short) 0x0158, (short) 0x00A0, (short) 0x0008, (short) 0xFF30,
(short) 0xFE50, (short) 0xFDA8, (short) 0xFD28, (short) 0xFCC8,
(short) 0xFC60, (short) 0xFBA8, (short) 0xFB40, (short) 0xFB10,
(short) 0xFB18, (short) 0xFB28, (short) 0xFB48, (short) 0xFB68,
(short) 0xFBA8, (short) 0xFBF8, (short) 0xFCB8, (short) 0xFD78,
(short) 0xFE00, (short) 0xFE88, (short) 0xFF30, (short) 0xFF98,
(short) 0xFFC8, (short) 0xFFE8, (short) 0x0050, (short) 0x00B0,
(short) 0x00E0, (short) 0x0040, (short) 0xFF68, (short) 0xFED8,
(short) 0xFEE8, (short) 0xFEE0, (short) 0xFE90, (short) 0xFEA8,
(short) 0xFF88, (short) 0x0080, (short) 0x0188, (short) 0x0208,
(short) 0x0290, (short) 0x0390, (short) 0x0438, (short) 0x0450,
(short) 0x0428, (short) 0x03F8, (short) 0x03E0, (short) 0x0388,
(short) 0x02E0, (short) 0x0240, (short) 0x0190, (short) 0x00D0,
(short) 0x0000, (short) 0x0000, (short) 0x0018, (short) 0x00FF,
(short) 0x0068, (short) 0x00FE, (short) 0x00F8, (short) 0x00FD};
gsm_byte gsm_enc_gsmdata[] = {
0xD5, 0x1F, 0x74, 0x21, 0xA0, 0x50, 0x40, 0xC9, 0x24, 0x7B, 0xFA, 0x6B,
0x52, 0xE0, 0xB6, 0xD6, 0x8E, 0xB9, 0x2B, 0xAE, 0xE0, 0x8B, 0x23, 0x52,
0x3B, 0x13, 0x86, 0xE0, 0x14, 0x4A, 0x41, 0x44, 0x32, 0xD3, 0xA1, 0x83,
0xA1, 0x1D, 0xA6, 0x80, 0xBA, 0xD2, 0x96, 0x26, 0xFB, 0x84, 0x80, 0x6D,
0x9C, 0x25, 0x1D, 0x9B, 0xAA, 0xC0, 0xBB, 0x4C, 0x95, 0xB9, 0x53, 0xAE,
0xA0, 0xB6, 0xE4, 0x46, 0x37, 0x1B, 0xD4, 0xA5, 0x7B, 0x1D, 0x22, 0x97,
0x00, 0xBA, 0xA5, 0x6D, 0xD2, 0xA1, 0x7E, 0xC0, 0xB9, 0x25, 0xD2, 0xB4,
0x94, 0x9E, 0xE0, 0x3E, 0xDE, 0xED, 0xD6, 0xD2, 0xE2, 0xC0, 0xD7, 0x5D,
0x8D, 0x59, 0xAC, 0xD3, 0xE4, 0x83, 0x95, 0x59, 0xC0, 0xA1, 0x48, 0xD2,
0x66, 0xC7, 0x2C, 0x9E, 0xA0, 0x2A, 0xD3, 0xEE, 0x45, 0x1C, 0x80, 0xE0,
0x6B, 0x34, 0x8C, 0x4B, 0x29, 0xCB, 0x00, 0xBA, 0xF6, 0x0D, 0x26, 0x9A,
0xD3, 0xA4, 0x82, 0x9D, 0x63, 0x7A, 0xC0, 0x67, 0x24, 0xBA, 0xD6, 0x7C,
0xC2, 0xC0, 0x37, 0x20, 0x4F, 0x10, 0xE0, 0xC7, 0x80, 0x6A, 0x77, 0x63,
0xBE, 0x6B, 0x5A, 0xC0, 0xB5, 0x34, 0xD1, 0x34, 0x9C, 0xD4, 0xE8, 0x56,
0xB2, 0x58, 0x5F, 0x00, 0xB7, 0xAF, 0x92, 0x12, 0x90, 0xD5, 0xA4, 0x39,
0x23, 0x4E, 0x46, 0x87, 0x51, 0xAC, 0xD8, 0xDB, 0x6D, 0xCB, 0x17, 0x50,
0x89, 0x7B, 0x44, 0x28, 0x03, 0x6B, 0xD5, 0xA9, 0x36, 0x36, 0xD9, 0x6B,
0xA8, 0x93, 0x3A, 0x96, 0xEE, 0xFF, 0x67, 0x8B, 0x36, 0xDA, 0x09, 0xB4,
0x99, 0x67, 0x2B, 0x88, 0xE4, 0xB5, 0xA5, 0xDA, 0x65, 0x47, 0xDA, 0x1E,
0x96, 0xFA, 0xEC, 0xD5, 0xA9, 0x45, 0x63, 0x1A, 0xCB, 0xC9, 0x48, 0x9D,
0x83, 0x5F, 0x6F, 0xCB, 0x08, 0x1B, 0x97, 0xC9, 0x18, 0x0A, 0x63, 0xCB,
0xA6, 0xE1, 0x84, 0xF5, 0x62, 0x61, 0x6A, 0x84, 0xDC, 0xB6, 0x37, 0x9E,
0xD6, 0xAB, 0x3C, 0x53, 0x93, 0xC1, 0x2A, 0xAA, 0x81, 0x8D, 0x6B, 0x65,
0x60, 0xA8, 0xFB, 0x2E, 0x22, 0x59, 0x74, 0x61, 0xA6, 0x5D, 0x73, 0x94,
0xF8, 0xE4, 0xC1, 0x46, 0x26, 0x5E, 0x8A, 0x86, 0xED, 0xD4, 0xA6, 0x2D,
0x57, 0x6B, 0xBE, 0xE8, 0x58, 0xDA, 0x3D, 0x98, 0x99, 0xBE, 0xA8, 0xC2,
0xDB, 0x6A, 0x2E, 0x51, 0x62, 0xE5, 0x80, 0x58, 0x76, 0xB8, 0xE4, 0x6C,
0x84, 0xCA, 0x98, 0x06, 0x0B, 0xFC, 0xD2, 0x66, 0x7C, 0x62, 0x3A, 0x5B,
0xC5, 0xDF, 0x7D, 0x75, 0x49, 0x1E, 0x52, 0xC7, 0x55, 0xF7, 0x84, 0xA6,
0xDA, 0x5D, 0x43, 0x26, 0x85, 0x98, 0xD8, 0x8F, 0xB6, 0xC5, 0x28, 0xEB,
0x3E, 0x75, 0x04, 0xD2, 0x27, 0xBA, 0x2A, 0x2B, 0xB7, 0x03, 0x13, 0x45,
0x35, 0x1B, 0x78, 0x5F, 0xC3, 0xBA, 0xDB, 0xAE, 0x27, 0xC2, 0x5E, 0xA4,
0x50, 0x8C, 0x8A, 0xBB, 0x4F, 0x60, 0xC3, 0xEE, 0x41, 0x46, 0x4A, 0xDF,
0xD2, 0x27, 0xB2, 0xAD, 0xEB, 0x5F, 0x43, 0x4C, 0x6A, 0x09, 0x2A, 0xCC,
0xB7, 0x47, 0x2A, 0xB9, 0x91, 0xB6, 0xD4, 0x5B, 0x25, 0x58, 0xD8, 0xFD,
0x46, 0x95, 0x5A, 0xC3, 0x27, 0x5B, 0x3F, 0xFB, 0x12, 0xD2, 0x26, 0xC3,
0xA9, 0xA1, 0xB6, 0xA2, 0xCB, 0x1B, 0xD0, 0x73, 0xE4, 0xBA, 0xA1, 0xE9,
0x05, 0xBE, 0x79, 0x23, 0xA4, 0xC2, 0x3A, 0x4B, 0x11, 0xE5, 0x68, 0xC4,
0xC1, 0xBA, 0xC1, 0xCC, 0x8B, 0x02, 0xD2, 0x63, 0x6C, 0xEE, 0x19, 0x5E,
0xE1, 0xB6, 0x4C, 0x1A, 0xB4, 0x5E, 0xF0, 0xC2, 0x27, 0x20, 0x55, 0xBD,
0x6D, 0x64, 0xE1, 0xC7, 0x45, 0xA9, 0x65, 0x6D, 0x7D, 0x42, 0x56, 0xD8,
0xB2, 0xB6, 0xEC, 0xD3, 0x61, 0x5B, 0x62, 0x61, 0x60, 0xA1, 0x5B, 0xD6,
0x15, 0x29, 0x09, 0x6C, 0xA1, 0x3E, 0xAD, 0x65, 0x34, 0xC3, 0xC0, 0xC1,
0x22, 0x6D, 0x4C, 0x57, 0x10, 0xDB, 0x41, 0xD2, 0xE1, 0x77, 0x64, 0xF7,
0xD3, 0x21, 0x73, 0xA9, 0x29, 0x58, 0xC1, 0xA1, 0x5A, 0x52, 0xB7, 0x32,
0x64, 0xC1, 0x67, 0x42, 0x74, 0x2C, 0xDC, 0x61, 0x61, 0x65, 0x8B, 0xCB,
0x04, 0xE5, 0x60, 0xC1, 0xC9, 0x5E, 0x8E, 0x36, 0x83, 0xD2, 0xA2, 0x83,
0xA9, 0xD9, 0xCD, 0x21, 0xB9, 0x25, 0xCD, 0xE6, 0x1D, 0x60, 0xA1, 0xB4,
0xAA, 0x8F, 0xBA, 0x75, 0xC3, 0x01, 0x0B, 0x3B, 0x51, 0xDB, 0xEC, 0x62,
0xE1, 0x38, 0xCD, 0x40, 0x3B, 0xD3, 0xD2, 0x26, 0x94, 0x29, 0xD2, 0x61,
0x21, 0x6B, 0x4A, 0x8D, 0x24, 0xB5, 0xBB, 0x21, 0x12, 0xA5, 0x99, 0xA5,
0x1A, 0xCA, 0xA1, 0xEF, 0x5D, 0xAA, 0xAE, 0xD3, 0x64, 0xE1, 0xA3, 0x6B,
0xAE, 0x35, 0x39, 0xD2, 0x66, 0x73, 0xB6, 0x90, 0xC6, 0xC1, 0x32, 0xD1,
0xBA, 0xC9, 0x25, 0x65, 0x81, 0xA8, 0xD2, 0xB1, 0xE7, 0x18, 0xBE, 0xC0,
0xFC, 0xE4, 0x85, 0xB5, 0x06, 0xB4, 0x81, 0x35, 0x46, 0xB6, 0xC8, 0x9B};
#endif /* end of include guard: DATA_H */

View File

@ -0,0 +1,54 @@
#ifndef PRIVATE_H
#define PRIVATE_H
typedef short word; /* 16 bit signed int */
typedef long longword; /* 32 bit signed int */
typedef unsigned short uword; /* unsigned word */
typedef unsigned long ulongword; /* unsigned longword */
struct gsm_state {
word dp0[280];
word z1; /* preprocessing.c, Offset_com. */
longword L_z2; /* Offset_com. */
int mp; /* Preemphasis */
word u[8]; /* short_term_aly_filter.c */
word LARpp[2][8]; /* */
word j; /* */
word nrp; /* 40 */ /* long_term.c, synthesis */
word v[9]; /* short_term.c, synthesis */
word msr; /* decoder.c, Postprocessing */
char verbose; /* only used if !NDEBUG */
char fast; /* only used if FAST */
};
#define MIN_WORD ((-32767) - 1)
#define MAX_WORD (32767)
#define MIN_LONGWORD ((-2147483647) - 1)
#define MAX_LONGWORD (2147483647)
#define SASR(x, by) ((x) >> (by))
/* Table 4.3a Decision level of the LTP gain quantizer
*/
/* bc 0 1 2 3 */
word gsm_enc_DLB[4] = {6554, 16384, 26214, 32767};
/* Table 4.5 Normalized inverse mantissa used to compute xM/xmax
*/
/* i 0 1 2 3 4 5 6 7 */
word gsm_enc_NRFAC[8] = {29128, 26215, 23832, 21846,
20165, 18725, 17476, 16384};
/* Table 4.6 Normalized direct mantissa used to compute xM/xmax
*/
/* i 0 1 2 3 4 5 6 7 */
word gsm_enc_FAC[8] = {18431, 20479, 22527, 24575, 26623, 28671, 30719, 32767};
#endif /* PRIVATE_H */

View File

@ -0,0 +1,864 @@
#ifndef DATA_H
#define DATA_H
gsm_signal gsm_enc_pcmdata[] = {
(short) 0x0000, (short) 0x0000, (short) 0x0010, (short) 0x0010,
(short) 0x0010, (short) 0x0020, (short) 0x0020, (short) 0x0018,
(short) 0x0028, (short) 0x0020, (short) 0x0020, (short) 0x0028,
(short) 0x0028, (short) 0x0020, (short) 0x0030, (short) 0x0030,
(short) 0x0028, (short) 0x0010, (short) 0x0008, (short) 0x0000,
(short) 0x0050, (short) 0x0060, (short) 0x0058, (short) 0x00D0,
(short) 0x00E0, (short) 0x00D0, (short) 0x0118, (short) 0x0128,
(short) 0x0118, (short) 0x0128, (short) 0x0110, (short) 0x0100,
(short) 0x00A0, (short) 0x0058, (short) 0x0048, (short) 0x0058,
(short) 0x0060, (short) 0x0058, (short) 0x0050, (short) 0x0048,
(short) 0x0040, (short) 0x0030, (short) 0x0020, (short) 0x0010,
(short) 0x0008, (short) 0xFFF8, (short) 0xFFE8, (short) 0xFFE0,
(short) 0xFFD8, (short) 0xFFC8, (short) 0xFFC0, (short) 0xFFC0,
(short) 0xFF98, (short) 0xFF78, (short) 0xFF78, (short) 0xFFC8,
(short) 0x0000, (short) 0x0010, (short) 0x0040, (short) 0x0060,
(short) 0x0068, (short) 0x0078, (short) 0x0078, (short) 0x0070,
(short) 0x00A8, (short) 0x00C8, (short) 0x00C8, (short) 0x00E0,
(short) 0x00F0, (short) 0x00E8, (short) 0x00F8, (short) 0x00F8,
(short) 0x00F0, (short) 0x00E0, (short) 0x00C8, (short) 0x00B8,
(short) 0x00E8, (short) 0x0100, (short) 0x00F8, (short) 0x00E8,
(short) 0x00D8, (short) 0x00C0, (short) 0x00A8, (short) 0x0020,
(short) 0xFFC0, (short) 0xFFA0, (short) 0xFFA0, (short) 0xFFA8,
(short) 0xFFB0, (short) 0xFFD0, (short) 0xFFF8, (short) 0x0000,
(short) 0x0020, (short) 0x0030, (short) 0x0030, (short) 0x0030,
(short) 0x0028, (short) 0x0020, (short) 0xFFF0, (short) 0xFFD0,
(short) 0xFFC8, (short) 0xFFC8, (short) 0xFFD0, (short) 0xFFD8,
(short) 0xFFE8, (short) 0xFFF8, (short) 0xFFF8, (short) 0x0008,
(short) 0x0018, (short) 0x0018, (short) 0x0078, (short) 0x00B8,
(short) 0x00C0, (short) 0x0100, (short) 0x0130, (short) 0x0128,
(short) 0x0108, (short) 0x00D8, (short) 0x00C0, (short) 0x0078,
(short) 0x0038, (short) 0x0020, (short) 0x0020, (short) 0x0000,
(short) 0xFFE0, (short) 0xFFE0, (short) 0xFFD8, (short) 0xFFC8,
(short) 0xFFC8, (short) 0xFFA0, (short) 0xFF88, (short) 0xFF98,
(short) 0xFF80, (short) 0xFF70, (short) 0xFF80, (short) 0xFF78,
(short) 0xFF78, (short) 0xFF90, (short) 0xFF80, (short) 0xFF78,
(short) 0xFF78, (short) 0xFF50, (short) 0xFF30, (short) 0xFF50,
(short) 0xFF38, (short) 0xFF30, (short) 0xFF40, (short) 0xFF58,
(short) 0xFF70, (short) 0xFF80, (short) 0xFF50, (short) 0xFF38,
(short) 0xFF40, (short) 0xFF18, (short) 0xFF00, (short) 0xFF08,
(short) 0xFF40, (short) 0xFF68, (short) 0xFF80, (short) 0xFF88,
(short) 0xFF88, (short) 0xFF88, (short) 0xFF88, (short) 0xFFB8,
(short) 0xFFE0, (short) 0xFFF0, (short) 0xFFD0, (short) 0xFFB8,
(short) 0xFFB8, (short) 0xFF90, (short) 0xFF70, (short) 0xFF70,
(short) 0xFF50, (short) 0xFF40, (short) 0xFF40, (short) 0xFF58,
(short) 0xFF70, (short) 0xFF80, (short) 0xFFC8, (short) 0x0000,
(short) 0x0018, (short) 0x0030, (short) 0x0048, (short) 0x0048,
(short) 0x0028, (short) 0x0008, (short) 0xFFF8, (short) 0xFFD8,
(short) 0xFFC8, (short) 0xFFB8, (short) 0xFF98, (short) 0xFF78,
(short) 0xFF70, (short) 0xFFF0, (short) 0x0058, (short) 0x0088,
(short) 0x00B8, (short) 0x00D0, (short) 0x00D8, (short) 0x00E8,
(short) 0x0138, (short) 0x0160, (short) 0x0158, (short) 0x0170,
(short) 0x0178, (short) 0x0160, (short) 0x0168, (short) 0x0160,
(short) 0x0140, (short) 0x0118, (short) 0x00F0, (short) 0x00C8,
(short) 0x0098, (short) 0x0078, (short) 0x0060, (short) 0x0018,
(short) 0xFFC0, (short) 0xFF90, (short) 0xFF48, (short) 0xFF00,
(short) 0xFEE8, (short) 0xFEC8, (short) 0xFEB8, (short) 0xFEB8,
(short) 0xFEA0, (short) 0xFE88, (short) 0xFE80, (short) 0xFEB8,
(short) 0xFEF8, (short) 0xFF38, (short) 0xFFA0, (short) 0xFFE8,
(short) 0x0008, (short) 0x0030, (short) 0x0058, (short) 0x0068,
(short) 0x0068, (short) 0x0070, (short) 0x0068, (short) 0x0050,
(short) 0x0040, (short) 0x0040, (short) 0x0020, (short) 0x0000,
(short) 0xFFE8, (short) 0xFFF0, (short) 0xFFF8, (short) 0xFFF8,
(short) 0x0038, (short) 0x0068, (short) 0x0078, (short) 0x0038,
(short) 0x0008, (short) 0xFFF0, (short) 0xFFE0, (short) 0xFFD8,
(short) 0xFFD8, (short) 0xFFE0, (short) 0xFFD0, (short) 0xFFC8,
(short) 0x0000, (short) 0x0030, (short) 0x0048, (short) 0x0068,
(short) 0x0080, (short) 0x0088, (short) 0x0088, (short) 0x0088,
(short) 0x0088, (short) 0x0088, (short) 0x0088, (short) 0x0078,
(short) 0x0098, (short) 0x00B0, (short) 0x00B8, (short) 0x0098,
(short) 0x0070, (short) 0x0058, (short) 0x0060, (short) 0x0078,
(short) 0x00A8, (short) 0x00B8, (short) 0x00A8, (short) 0x00A0,
(short) 0x0080, (short) 0x0068, (short) 0x0060, (short) 0x0058,
(short) 0x0048, (short) 0x0030, (short) 0x0038, (short) 0x0038,
(short) 0x0030, (short) 0x0050, (short) 0x0058, (short) 0x0060,
(short) 0x0030, (short) 0x0008, (short) 0xFFF8, (short) 0xFF90,
(short) 0xFF48, (short) 0xFF28, (short) 0xFF10, (short) 0xFEF8,
(short) 0xFEF0, (short) 0xFED8, (short) 0xFEB0, (short) 0xFEB0,
(short) 0xFEA8, (short) 0xFEB8, (short) 0xFED8, (short) 0xFEF8,
(short) 0xFF10, (short) 0xFF20, (short) 0xFF40, (short) 0xFF58,
(short) 0xFF80, (short) 0xFFA0, (short) 0xFFB8, (short) 0xFFC8,
(short) 0xFFD8, (short) 0xFFE0, (short) 0xFFF0, (short) 0x0048,
(short) 0x0098, (short) 0x00B0, (short) 0x0068, (short) 0x0018,
(short) 0xFFF8, (short) 0xFFE8, (short) 0xFFF0, (short) 0xFFF8,
(short) 0x0020, (short) 0x0038, (short) 0x0038, (short) 0x0050,
(short) 0x0068, (short) 0x0070, (short) 0x0068, (short) 0x0060,
(short) 0x0060, (short) 0x0038, (short) 0x0020, (short) 0x0018,
(short) 0x0040, (short) 0x0060, (short) 0x0068, (short) 0x0040,
(short) 0x0010, (short) 0x0000, (short) 0xFFB0, (short) 0xFF78,
(short) 0xFF70, (short) 0xFF90, (short) 0xFFA8, (short) 0xFFC8,
(short) 0xFF98, (short) 0xFF50, (short) 0xFF50, (short) 0xFF50,
(short) 0xFF58, (short) 0xFF68, (short) 0xFF48, (short) 0xFF20,
(short) 0xFF18, (short) 0xFF38, (short) 0xFF60, (short) 0xFF70,
(short) 0xFF80, (short) 0xFF98, (short) 0xFFA0, (short) 0xFFB8,
(short) 0xFFD0, (short) 0xFFE0, (short) 0x0018, (short) 0x0048,
(short) 0x0058, (short) 0x00B0, (short) 0x00F8, (short) 0x0108,
(short) 0x0118, (short) 0x0120, (short) 0x0118, (short) 0x0130,
(short) 0x0148, (short) 0x0140, (short) 0x0130, (short) 0x0120,
(short) 0x0108, (short) 0x0098, (short) 0x0038, (short) 0x0018,
(short) 0xFFD0, (short) 0xFF90, (short) 0xFF80, (short) 0xFF58,
(short) 0xFF38, (short) 0xFF30, (short) 0xFF48, (short) 0xFF68,
(short) 0xFF78, (short) 0xFF88, (short) 0xFFB8, (short) 0xFFD8,
(short) 0xFFE8, (short) 0xFFD8, (short) 0xFFF0, (short) 0x0010,
(short) 0x0020, (short) 0x0020, (short) 0x0018, (short) 0x0028,
(short) 0x0030, (short) 0x0030, (short) 0x0038, (short) 0x0060,
(short) 0x0080, (short) 0x0080, (short) 0x00B0, (short) 0x00D8,
(short) 0x00D0, (short) 0x00B8, (short) 0x00A8, (short) 0x00A8,
(short) 0x00A0, (short) 0x0090, (short) 0x0078, (short) 0x0070,
(short) 0x0068, (short) 0x0048, (short) 0x0018, (short) 0x0008,
(short) 0x0008, (short) 0x0000, (short) 0x0000, (short) 0xFFE8,
(short) 0xFFB0, (short) 0xFF90, (short) 0xFF88, (short) 0xFF70,
(short) 0xFF60, (short) 0xFF60, (short) 0xFF90, (short) 0xFFC0,
(short) 0xFFD0, (short) 0xFFD8, (short) 0xFFE0, (short) 0xFFE8,
(short) 0x0018, (short) 0x0050, (short) 0x0058, (short) 0x0030,
(short) 0x0008, (short) 0x0000, (short) 0x0018, (short) 0x0038,
(short) 0x0038, (short) 0x0048, (short) 0x0050, (short) 0x0050,
(short) 0x0020, (short) 0x0000, (short) 0xFFF8, (short) 0xFFB0,
(short) 0xFF70, (short) 0xFF68, (short) 0xFFB0, (short) 0xFFE8,
(short) 0xFFF8, (short) 0xFFF8, (short) 0xFFF8, (short) 0xFFF0,
(short) 0x0030, (short) 0x0070, (short) 0x0090, (short) 0x0098,
(short) 0x0098, (short) 0x0090, (short) 0x00A0, (short) 0x00B0,
(short) 0x00B8, (short) 0x00C0, (short) 0x00C0, (short) 0x00A8,
(short) 0x0098, (short) 0x0088, (short) 0x0078, (short) 0x0050,
(short) 0x0030, (short) 0x0020, (short) 0xFFD8, (short) 0xFF98,
(short) 0xFF88, (short) 0xFF50, (short) 0xFF20, (short) 0xFF18,
(short) 0xFEF8, (short) 0xFEE0, (short) 0xFEE8, (short) 0xFE70,
(short) 0xFE08, (short) 0xFE00, (short) 0xFE48, (short) 0xFE98,
(short) 0xFEB8, (short) 0xFEE8, (short) 0xFF10, (short) 0xFF28,
(short) 0xFF18, (short) 0xFF10, (short) 0xFF18, (short) 0xFF48,
(short) 0xFF70, (short) 0xFF88, (short) 0xFFE0, (short) 0x0028,
(short) 0x0040, (short) 0x0058, (short) 0x0068, (short) 0x0070,
(short) 0x0078, (short) 0x0070, (short) 0x0068, (short) 0x0068,
(short) 0x0078, (short) 0x0080, (short) 0x0080, (short) 0x0088,
(short) 0x0088, (short) 0x0080, (short) 0x0058, (short) 0x0030,
(short) 0x0020, (short) 0x0018, (short) 0x0018, (short) 0x0018,
(short) 0x0050, (short) 0x0090, (short) 0x00A0, (short) 0x0080,
(short) 0x0060, (short) 0x0050, (short) 0x0030, (short) 0x0018,
(short) 0x0010, (short) 0x0028, (short) 0x0038, (short) 0x0038,
(short) 0x0018, (short) 0xFFF8, (short) 0xFFF0, (short) 0x0000,
(short) 0x0020, (short) 0x0020, (short) 0x0030, (short) 0x0030,
(short) 0x0030, (short) 0x0040, (short) 0x0050, (short) 0x0050,
(short) 0x0050, (short) 0x0048, (short) 0x0048, (short) 0x0048,
(short) 0x0048, (short) 0x0048, (short) 0x0078, (short) 0x00A0,
(short) 0x00A8, (short) 0x00C0, (short) 0x00C8, (short) 0x00C0,
(short) 0x00D0, (short) 0x00E0, (short) 0x00D8, (short) 0x00E8,
(short) 0x00F0, (short) 0x00E0, (short) 0x0100, (short) 0x0118,
(short) 0x0110, (short) 0x0100, (short) 0x00F0, (short) 0x00D8,
(short) 0x0090, (short) 0x0048, (short) 0x0028, (short) 0x0020,
(short) 0x0020, (short) 0x0020, (short) 0x0038, (short) 0x0050,
(short) 0x0050, (short) 0x0050, (short) 0x0048, (short) 0x0040,
(short) 0x0050, (short) 0x0060, (short) 0x0060, (short) 0x0040,
(short) 0xFFC0, (short) 0xFF58, (short) 0xFF40, (short) 0xFF90,
(short) 0xFFE8, (short) 0x0000, (short) 0x0020, (short) 0x0030,
(short) 0x0030, (short) 0x0068, (short) 0x0098, (short) 0x00A8,
(short) 0x0110, (short) 0x0168, (short) 0x0170, (short) 0x0148,
(short) 0x0118, (short) 0x00F0, (short) 0x00E8, (short) 0x00E0,
(short) 0x00D0, (short) 0x0098, (short) 0x0060, (short) 0x0040,
(short) 0x0000, (short) 0xFFD8, (short) 0xFFD8, (short) 0xFFC0,
(short) 0xFFB0, (short) 0xFFB0, (short) 0xFF78, (short) 0xFF30,
(short) 0xFF10, (short) 0xFEF0, (short) 0xFEE8, (short) 0xFEF0,
(short) 0xFEC8, (short) 0xFED0, (short) 0xFEF8, (short) 0xFF00,
(short) 0xFF10, (short) 0xFF20, (short) 0xFF50, (short) 0xFF78,
(short) 0xFF90, (short) 0xFF80, (short) 0xFF70, (short) 0xFF70,
(short) 0xFF80, (short) 0xFF98, (short) 0xFFA0, (short) 0xFFB8,
(short) 0xFFD0, (short) 0xFFD8, (short) 0xFFF0, (short) 0x0000,
(short) 0x0008, (short) 0x0028, (short) 0x0048, (short) 0x0058,
(short) 0x0078, (short) 0x0070, (short) 0x0058, (short) 0x0068,
(short) 0x0098, (short) 0x00B8, (short) 0x00D8, (short) 0x00F0,
(short) 0x00F0, (short) 0x00E8, (short) 0x00F8, (short) 0x0100,
(short) 0x00D8, (short) 0x00D0, (short) 0x00C8, (short) 0x00E8,
(short) 0x0100, (short) 0x00F0, (short) 0x00E0, (short) 0x00C8,
(short) 0x00B8, (short) 0x00A0, (short) 0x0078, (short) 0x0058,
(short) 0x0038, (short) 0x0020, (short) 0x0010, (short) 0x0010,
(short) 0x0018, (short) 0x0010, (short) 0x0010, (short) 0x0010,
(short) 0x0018, (short) 0x0028, (short) 0x0008, (short) 0xFFE0,
(short) 0xFFC8, (short) 0xFF80, (short) 0xFF48, (short) 0xFF38,
(short) 0xFF40, (short) 0xFF48, (short) 0xFF48, (short) 0xFF70,
(short) 0xFF90, (short) 0xFFA8, (short) 0xFFB8, (short) 0xFFC0,
(short) 0xFFC8, (short) 0xFFC0, (short) 0xFFC0, (short) 0xFFC0,
(short) 0xFFB0, (short) 0xFFA0, (short) 0xFFA0, (short) 0xFFA0,
(short) 0xFFA8, (short) 0xFFB0, (short) 0xFF68, (short) 0xFF28,
(short) 0xFF08, (short) 0xFEF8, (short) 0xFEF8, (short) 0xFEE8,
(short) 0xFEE0, (short) 0xFED8, (short) 0xFEA8, (short) 0xFE98,
(short) 0xFEA8, (short) 0xFEA8, (short) 0xFEA0, (short) 0xFEA0,
(short) 0xFED0, (short) 0xFF00, (short) 0xFF30, (short) 0xFF28,
(short) 0xFF38, (short) 0xFF58, (short) 0xFF48, (short) 0xFF40,
(short) 0xFF48, (short) 0xFFB0, (short) 0x0010, (short) 0x0038,
(short) 0x0028, (short) 0x0010, (short) 0x0008, (short) 0x0050,
(short) 0x00A0, (short) 0x00B8, (short) 0x00A0, (short) 0x0080,
(short) 0x0070, (short) 0x0090, (short) 0x00B0, (short) 0x00B0,
(short) 0x00B8, (short) 0x00B8, (short) 0x00B0, (short) 0x00C0,
(short) 0x00D0, (short) 0x00C8, (short) 0x00A0, (short) 0x0068,
(short) 0x0038, (short) 0xFFF0, (short) 0xFFB0, (short) 0xFF88,
(short) 0xFF78, (short) 0xFF68, (short) 0xFF60, (short) 0xFF90,
(short) 0xFFC0, (short) 0xFFE0, (short) 0x0000, (short) 0x0020,
(short) 0x0030, (short) 0x00A0, (short) 0x0110, (short) 0x0138,
(short) 0x0140, (short) 0x0148, (short) 0x0148, (short) 0x0110,
(short) 0x00E8, (short) 0x00C0, (short) 0x00A0, (short) 0x0088,
(short) 0x0068, (short) 0x0008, (short) 0xFFB0, (short) 0xFF88,
(short) 0xFF58, (short) 0xFF30, (short) 0xFF20, (short) 0xFEF8,
(short) 0xFED8, (short) 0xFED8, (short) 0xFF00, (short) 0xFF20,
(short) 0xFF38, (short) 0xFF50, (short) 0xFF68, (short) 0xFF88,
(short) 0xFFA0, (short) 0xFFB8, (short) 0x0020, (short) 0x0080,
(short) 0x00A0, (short) 0x00D8, (short) 0x0100, (short) 0x0100,
(short) 0x0138, (short) 0x0168, (short) 0x0148, (short) 0x0128,
(short) 0x0120, (short) 0x00F8, (short) 0x00E8, (short) 0x00E0,
(short) 0x00C0, (short) 0x00A8, (short) 0x00B0, (short) 0x0098,
(short) 0x0070, (short) 0x0048, (short) 0x0030, (short) 0xFFD0,
(short) 0xFF60, (short) 0xFF48, (short) 0xFF10, (short) 0xFEA8,
(short) 0xFEA8, (short) 0xFEC0, (short) 0xFEC0, (short) 0xFEE8,
(short) 0xFEB0, (short) 0xFE58, (short) 0xFE88, (short) 0xFED0,
(short) 0xFEB8, (short) 0xFE48, (short) 0xFE58, (short) 0xFEE8,
(short) 0xFF28, (short) 0xFF18, (short) 0xFF60, (short) 0x00A0,
(short) 0x01A0, (short) 0x0188, (short) 0x0178, (short) 0x0208,
(short) 0x0208, (short) 0x0100, (short) 0x0018, (short) 0xFFE0,
(short) 0xFEE0, (short) 0xFD68, (short) 0xFD00, (short) 0xFD60,
(short) 0xFD70, (short) 0xFDA8, (short) 0xFF00, (short) 0x00A0,
(short) 0x0170, (short) 0x0210, (short) 0x02D8, (short) 0x0310,
(short) 0x0218, (short) 0x00A0, (short) 0xFFA0, (short) 0xFDF0,
(short) 0xFBD8, (short) 0xFB08, (short) 0xF9C0, (short) 0xF830,
(short) 0xF8D8, (short) 0xFCC0, (short) 0x0038, (short) 0x01A0,
(short) 0x0380, (short) 0x0A18, (short) 0x0F50, (short) 0x0DB0,
(short) 0x0C30, (short) 0x0E18, (short) 0x0CA8, (short) 0x0570,
(short) 0xFF98, (short) 0xFE38, (short) 0xFBA0, (short) 0xF700,
(short) 0xF5D0, (short) 0xF7C8, (short) 0xF9A8, (short) 0xFB48,
(short) 0xFBB0, (short) 0xFC78, (short) 0xFF00, (short) 0xFE98,
(short) 0xFB20, (short) 0xFA48, (short) 0xFAC0, (short) 0xF8C8,
(short) 0xF6E0, (short) 0xF9C0, (short) 0xFE08, (short) 0xFF80,
(short) 0x0428, (short) 0x0B70, (short) 0x0E18, (short) 0x0D38,
(short) 0x0D38, (short) 0x0C28, (short) 0x01D0, (short) 0xF578,
(short) 0xF108, (short) 0xFB50, (short) 0x0498, (short) 0x0428,
(short) 0x0CE8, (short) 0x2190, (short) 0x29F0, (short) 0x22E0,
(short) 0x1F68, (short) 0x2050, (short) 0x1810, (short) 0x0710,
(short) 0xFA98, (short) 0xF438, (short) 0xEE68, (short) 0xE950,
(short) 0xEBC8, (short) 0xF538, (short) 0xFEB8, (short) 0x0240,
(short) 0x0460, (short) 0x09D0, (short) 0x0978, (short) 0xFFF8,
(short) 0xF810, (short) 0xF190, (short) 0xE8D0, (short) 0xE290,
(short) 0xDF60, (short) 0xDFF0, (short) 0xE668, (short) 0xEC20,
(short) 0xF138, (short) 0xFAC0, (short) 0x04F0, (short) 0x08D0,
(short) 0x08C8, (short) 0x0B18, (short) 0x09F8, (short) 0x0230,
(short) 0xFA38, (short) 0xFA68, (short) 0xFC78, (short) 0xF9B8,
(short) 0xF850, (short) 0xFEA8, (short) 0x05B8, (short) 0x0690,
(short) 0x02E8, (short) 0x0268, (short) 0x0498, (short) 0xFCB0,
(short) 0xF018, (short) 0xEDF8, (short) 0x0090, (short) 0x0F48,
(short) 0x0C70, (short) 0x1278, (short) 0x27B8, (short) 0x2EA0,
(short) 0x21F8, (short) 0x1920, (short) 0x1918, (short) 0x1530,
(short) 0x0638, (short) 0xF858, (short) 0xF720, (short) 0xF9F8,
(short) 0xF600, (short) 0xF850, (short) 0x0590, (short) 0x0EE0,
(short) 0x1000, (short) 0x10D8, (short) 0x1460, (short) 0x10F8,
(short) 0x0500, (short) 0xFBC0, (short) 0xF7A8, (short) 0xF250,
(short) 0xEC00, (short) 0xEB30, (short) 0xF1C8, (short) 0xF920,
(short) 0xFC90, (short) 0x0190, (short) 0x0A60, (short) 0x0E80,
(short) 0x0DB0, (short) 0x0AD8, (short) 0x0690, (short) 0x0168,
(short) 0xFF20, (short) 0xFBD0, (short) 0xF6F8, (short) 0xF660,
(short) 0xF680, (short) 0xF5B0, (short) 0xF7C0, (short) 0xF120,
(short) 0xEA90, (short) 0xF030, (short) 0xEC18, (short) 0xE190,
(short) 0xE558, (short) 0xFF20, (short) 0x1090, (short) 0x0C50,
(short) 0x1248, (short) 0x2788, (short) 0x2AD0, (short) 0x1628,
(short) 0x08F0, (short) 0x0BA8, (short) 0x0538, (short) 0xEF48,
(short) 0xE410, (short) 0xEB10, (short) 0xEF68, (short) 0xEA28,
(short) 0xEC40, (short) 0xFC18, (short) 0x08A8, (short) 0x0818,
(short) 0x0778, (short) 0x0858, (short) 0x02F8, (short) 0xF8E8,
(short) 0xF1F0, (short) 0xEF40, (short) 0xECD0, (short) 0xE958,
(short) 0xEA70, (short) 0xF260, (short) 0xFAF0, (short) 0xFFA0,
(short) 0x04A0, (short) 0x0CF8, (short) 0x10F8, (short) 0x0EA0,
(short) 0x0D48, (short) 0x0BE8, (short) 0x05E0, (short) 0x03B0,
(short) 0x0358, (short) 0xFF18, (short) 0xFB40, (short) 0xF9B0,
(short) 0xF9C0, (short) 0xF7C0, (short) 0xEE90, (short) 0xEAA0,
(short) 0xEE00, (short) 0xE888, (short) 0xE200, (short) 0xEF00,
(short) 0x0948, (short) 0x1400, (short) 0x1270, (short) 0x1D88,
(short) 0x2CD8, (short) 0x2488, (short) 0x0DA8, (short) 0x04B8,
(short) 0x0548, (short) 0xF7B0, (short) 0xE3F0, (short) 0xE268,
(short) 0xEFF8, (short) 0xF5A0, (short) 0xF320, (short) 0xFC68,
(short) 0x0BF0, (short) 0x0FA0, (short) 0x0A50, (short) 0x01F8,
(short) 0xFE60, (short) 0xFC48, (short) 0xF340, (short) 0xEB28,
(short) 0xED58, (short) 0xF3C0, (short) 0xF5B8, (short) 0xF738,
(short) 0x00F8, (short) 0x0C70, (short) 0x0E90, (short) 0x0DE8,
(short) 0x1190, (short) 0x12B0, (short) 0x1058, (short) 0x0B98,
(short) 0x0638, (short) 0x0868, (short) 0x0998, (short) 0x02B0,
(short) 0xFE50, (short) 0x0120, (short) 0x02A0, (short) 0xFC90,
(short) 0xF810, (short) 0xF9D0, (short) 0xF818, (short) 0xF290,
(short) 0xF240, (short) 0xF6D0, (short) 0x0A48, (short) 0x1AD8,
(short) 0x1840, (short) 0x1C18, (short) 0x2B18, (short) 0x29F0,
(short) 0x1608, (short) 0x08B8, (short) 0x0778, (short) 0x0128,
(short) 0xF118, (short) 0xE868, (short) 0xEDA0, (short) 0xF310,
(short) 0xF248, (short) 0xF558, (short) 0x0058, (short) 0x0970,
(short) 0x0688, (short) 0x0108, (short) 0xFD08, (short) 0xF988,
(short) 0xF558, (short) 0xF0A0, (short) 0xF0B0, (short) 0xF540,
(short) 0xF6E8, (short) 0xFCA0, (short) 0x0758, (short) 0x0CD0,
(short) 0x0F60, (short) 0x1338, (short) 0x1458, (short) 0x1278,
(short) 0x0FD0, (short) 0x0CA8, (short) 0x0D50, (short) 0x0D10,
(short) 0x0798, (short) 0x0398, (short) 0x0428, (short) 0x04F0,
(short) 0x0278, (short) 0xFF98, (short) 0x0178, (short) 0x0088,
(short) 0xFB08, (short) 0xF660, (short) 0xF1A8, (short) 0xEF18,
(short) 0xF9E8, (short) 0x0C00, (short) 0x11C8, (short) 0x1260,
(short) 0x1B60, (short) 0x21B0, (short) 0x18E0, (short) 0x0B08,
(short) 0x04C8, (short) 0x0078, (short) 0xF730, (short) 0xEF60,
(short) 0xEB18, (short) 0xEC10, (short) 0xF290, (short) 0xF800,
(short) 0xFB60, (short) 0xFF60, (short) 0x0080, (short) 0xFFA8,
(short) 0xFB08, (short) 0xF1A8, (short) 0xED10, (short) 0xEFF0,
(short) 0xEED0, (short) 0xEB10, (short) 0xEFE8, (short) 0xF8F0,
(short) 0xFDE0, (short) 0x0298, (short) 0x0528, (short) 0x0598,
(short) 0x0928, (short) 0x0A30, (short) 0x0670, (short) 0x08E8,
(short) 0x0BC0, (short) 0x0698, (short) 0x0210, (short) 0x0390,
(short) 0x0560, (short) 0x0288, (short) 0xF910, (short) 0xF468,
(short) 0xF560, (short) 0xF3E0, (short) 0xEE10, (short) 0xE8B0,
(short) 0xE508, (short) 0xEED0, (short) 0x03E0, (short) 0x0638,
(short) 0xFFA8, (short) 0x0BB8, (short) 0x2078, (short) 0x1FA8,
(short) 0x0EF0, (short) 0x0648, (short) 0x05C8, (short) 0xFF18,
(short) 0xF588, (short) 0xEE20, (short) 0xED88, (short) 0xF5A0,
(short) 0xFBA8, (short) 0xFBC0, (short) 0xFA98, (short) 0xFA20,
(short) 0xF7D8, (short) 0xF2D0, (short) 0xEF48, (short) 0xE998,
(short) 0xE378, (short) 0xE530, (short) 0xE868, (short) 0xE890,
(short) 0xEDD0, (short) 0xF798, (short) 0xFBC0, (short) 0xFD20,
(short) 0x0178, (short) 0x0490, (short) 0x04A0, (short) 0x0758,
(short) 0x0858, (short) 0x0490, (short) 0x04F8, (short) 0x0858,
(short) 0x06F0, (short) 0x05F8, (short) 0x0450, (short) 0x0098,
(short) 0xFE60, (short) 0xFDA0, (short) 0xF9E0, (short) 0xF358,
(short) 0xEDC0, (short) 0xF308, (short) 0xFFE0, (short) 0x0018,
(short) 0xFB80, (short) 0x0948, (short) 0x1DB8, (short) 0x1D08,
(short) 0x0F88, (short) 0x0B48, (short) 0x0C50, (short) 0x09C0,
(short) 0xFF78, (short) 0xF1A0, (short) 0xEF28, (short) 0xF6B8,
(short) 0xF9F0, (short) 0xF6F0, (short) 0xF688, (short) 0xF9E0,
(short) 0xF9C0, (short) 0xF4C8, (short) 0xEBD8, (short) 0xE7E8,
(short) 0xEBE0, (short) 0xE8C8, (short) 0xE100, (short) 0xE518,
(short) 0xF0B8, (short) 0xF728, (short) 0xF770, (short) 0xF878,
(short) 0xFF58, (short) 0x06B0, (short) 0x0430, (short) 0x0060,
(short) 0x0390, (short) 0x0A18, (short) 0x0B98, (short) 0x06C8,
(short) 0x0710, (short) 0x0CF0, (short) 0x08D0, (short) 0x01F8,
(short) 0x0280, (short) 0x0238, (short) 0xFD78, (short) 0xF868,
(short) 0xF198, (short) 0xF670, (short) 0x0930, (short) 0x0A78,
(short) 0xFB38, (short) 0x04F0, (short) 0x1EB8, (short) 0x1E98,
(short) 0x0F68, (short) 0x0EC8, (short) 0x1548, (short) 0x1480,
(short) 0x0C60, (short) 0x00B0, (short) 0xFEF8, (short) 0x0830,
(short) 0x0838, (short) 0x0160, (short) 0x0380, (short) 0x07E8,
(short) 0x0270, (short) 0xFBA0, (short) 0xF9C0, (short) 0xF450,
(short) 0xEE08, (short) 0xED08, (short) 0xEE10, (short) 0xEF20,
(short) 0xF1C0, (short) 0xF800, (short) 0xFE70, (short) 0x00B0,
(short) 0x02D8, (short) 0x07C8, (short) 0x09F0, (short) 0x09A8,
(short) 0x0A60, (short) 0x0B28, (short) 0x0C80, (short) 0x0D58,
(short) 0x0BD0, (short) 0x0A48, (short) 0x0900, (short) 0x0768,
(short) 0x03D0, (short) 0x00E0, (short) 0xFFF8, (short) 0xFBD8,
(short) 0xF5E8, (short) 0xFE18, (short) 0x0FE8, (short) 0x1060,
(short) 0x05C8, (short) 0x1078, (short) 0x2638, (short) 0x2580,
(short) 0x1740, (short) 0x14E8, (short) 0x19D0, (short) 0x17D8,
(short) 0x0E10, (short) 0x0270, (short) 0x0120, (short) 0x0900,
(short) 0x0870, (short) 0x0290, (short) 0x03A0, (short) 0x0600,
(short) 0x0100, (short) 0xFE28, (short) 0xFF28, (short) 0xF838,
(short) 0xF0B8, (short) 0xF238, (short) 0xF530, (short) 0xF440,
(short) 0xF440, (short) 0xFA38, (short) 0x0198, (short) 0x03A8,
(short) 0x03D0, (short) 0x0780, (short) 0x0AB8, (short) 0x0B58,
(short) 0x0B10, (short) 0x0AD8, (short) 0x0A08, (short) 0x0878,
(short) 0x07C8, (short) 0x0648, (short) 0x01A0, (short) 0xFF48,
(short) 0xFE58, (short) 0xFA68, (short) 0xF7D0, (short) 0xF758,
(short) 0xF470, (short) 0xF5B0, (short) 0x02A8, (short) 0x0A58,
(short) 0x0448, (short) 0x07C8, (short) 0x1708, (short) 0x1970,
(short) 0x0EC8, (short) 0x0A40, (short) 0x0CD0, (short) 0x0D28,
(short) 0x0838, (short) 0x0010, (short) 0xFAE0, (short) 0xFCB0,
(short) 0xFEB8, (short) 0xFCE8, (short) 0xFBA8, (short) 0xFD10,
(short) 0xFBC8, (short) 0xF910, (short) 0xF960, (short) 0xF830,
(short) 0xF4D8, (short) 0xF500, (short) 0xF860, (short) 0xF9F0,
(short) 0xFB58, (short) 0xFE48, (short) 0x0050, (short) 0x0418,
(short) 0x0910, (short) 0x0940, (short) 0x0830, (short) 0x0AC8,
(short) 0x0C88, (short) 0x0A50, (short) 0x07C0, (short) 0x0700,
(short) 0x0590, (short) 0x0268, (short) 0xFFF0, (short) 0xFBA8,
(short) 0xF720, (short) 0xF698, (short) 0xF2E0, (short) 0xEB68,
(short) 0xEDA0, (short) 0xFC00, (short) 0x0358, (short) 0xFF30,
(short) 0x0398, (short) 0x1220, (short) 0x1860, (short) 0x1368,
(short) 0x10C0, (short) 0x12F0, (short) 0x12A0, (short) 0x0E08,
(short) 0x0780, (short) 0x0010, (short) 0xFAD8, (short) 0xF990,
(short) 0xF7E0, (short) 0xF278, (short) 0xEE10, (short) 0xEB98,
(short) 0xE7A0, (short) 0xE6F8, (short) 0xEA30, (short) 0xE980,
(short) 0xE420, (short) 0xE440, (short) 0xEBA8, (short) 0xEF98,
(short) 0xEF68, (short) 0xF288, (short) 0xF7A8, (short) 0xFC90,
(short) 0x01F8, (short) 0x0528, (short) 0x0630, (short) 0x08E8,
(short) 0x0C98, (short) 0x0D50, (short) 0x0B98, (short) 0x0920,
(short) 0x0678, (short) 0x03F0, (short) 0x0260, (short) 0xFE00,
(short) 0xF810, (short) 0xF4B8, (short) 0xF0C0, (short) 0xEB68,
(short) 0xEF58, (short) 0xFAE8, (short) 0xFDE0, (short) 0xF680,
(short) 0xF910, (short) 0x06E0, (short) 0x0C20, (short) 0x05D8,
(short) 0x0408, (short) 0x05C8, (short) 0x0450, (short) 0x02D0,
(short) 0x0128, (short) 0xFB78, (short) 0xF668, (short) 0xF430,
(short) 0xF150, (short) 0xED90, (short) 0xE870, (short) 0xE448,
(short) 0xE2E0, (short) 0xE048, (short) 0xDDD0, (short) 0xDF08,
(short) 0xE0E0, (short) 0xE098, (short) 0xE258, (short) 0xE520,
(short) 0xE6A8, (short) 0xEA28, (short) 0xEF88, (short) 0xF2A8,
(short) 0xF548, (short) 0xFBA8, (short) 0x01C8, (short) 0x03F8,
(short) 0x0748, (short) 0x0C88, (short) 0x0E98, (short) 0x0DB8,
(short) 0x0D98, (short) 0x0D50, (short) 0x0B68, (short) 0x0970,
(short) 0x06C0, (short) 0x0238, (short) 0xFE18, (short) 0xFB08,
(short) 0xF820, (short) 0xF780, (short) 0xF970, (short) 0xF9B0,
(short) 0xF880, (short) 0xFA28, (short) 0x0028, (short) 0x0698,
(short) 0x0948, (short) 0x08D0, (short) 0x09E0, (short) 0x0DD0,
(short) 0x1010, (short) 0x0D40, (short) 0x0958, (short) 0x0728,
(short) 0x0308, (short) 0xFDA0, (short) 0xF9F8, (short) 0xF418,
(short) 0xEC98, (short) 0xE8B8, (short) 0xE618, (short) 0xE200,
(short) 0xDED0, (short) 0xDF48, (short) 0xE100, (short) 0xE180,
(short) 0xE160, (short) 0xE3C8, (short) 0xE898, (short) 0xEDD8,
(short) 0xF250, (short) 0xF558, (short) 0xFB00, (short) 0x02F8,
(short) 0x07B0, (short) 0x0B80, (short) 0x1108, (short) 0x1518,
(short) 0x1660, (short) 0x1770, (short) 0x1870, (short) 0x16F8,
(short) 0x1300, (short) 0x0F78, (short) 0x0FC0, (short) 0x1070,
(short) 0x0CE8, (short) 0x0AF8, (short) 0x0BD8, (short) 0x0D28,
(short) 0x10A8, (short) 0x1370, (short) 0x10A0, (short) 0x1040,
(short) 0x1518, (short) 0x1740, (short) 0x1550, (short) 0x1398,
(short) 0x10E0, (short) 0x0AC8, (short) 0x0640, (short) 0x0348,
(short) 0xFD18, (short) 0xF658, (short) 0xF1D8, (short) 0xEC20,
(short) 0xE760, (short) 0xE550, (short) 0xE4B8, (short) 0xE418,
(short) 0xE438, (short) 0xE508, (short) 0xE738, (short) 0xEB18,
(short) 0xF0C8, (short) 0xF618, (short) 0xF988, (short) 0xFEC8,
(short) 0x0518, (short) 0x09D8, (short) 0x1118, (short) 0x17F0,
(short) 0x1BB0, (short) 0x1E28, (short) 0x2120, (short) 0x23D8,
(short) 0x2638, (short) 0x2418, (short) 0x2080, (short) 0x1D30,
(short) 0x1CE8, (short) 0x1D98, (short) 0x1CA8, (short) 0x1AD8,
(short) 0x1960, (short) 0x17F8, (short) 0x1A40, (short) 0x1CF8,
(short) 0x1D38, (short) 0x1C30, (short) 0x1A68, (short) 0x1860,
(short) 0x1480, (short) 0x1020, (short) 0x0B68, (short) 0x03E8,
(short) 0xFBA8, (short) 0xF508, (short) 0xEE40, (short) 0xE820,
(short) 0xE338, (short) 0xDE88, (short) 0xDA30, (short) 0xD7D0,
(short) 0xD728, (short) 0xD7D8, (short) 0xD998, (short) 0xDC10,
(short) 0xDFB0, (short) 0xE470, (short) 0xE948, (short) 0xEF98,
(short) 0xF5F0, (short) 0xFC38, (short) 0x0228, (short) 0x0798,
(short) 0x0D98, (short) 0x1320, (short) 0x1760, (short) 0x1A70,
(short) 0x1BE0, (short) 0x1CC0, (short) 0x1D98, (short) 0x1A88,
(short) 0x1658, (short) 0x12A0, (short) 0x1180, (short) 0x10A8,
(short) 0x0ED0, (short) 0x0CC8, (short) 0x0AD8, (short) 0x0920,
(short) 0x0B70, (short) 0x0E30, (short) 0x0EE8, (short) 0x0D80,
(short) 0x0BE0, (short) 0x0AC0, (short) 0x09B8, (short) 0x0890,
(short) 0x0690, (short) 0x01F8, (short) 0xFD30, (short) 0xF9F0,
(short) 0xF5B0, (short) 0xF188, (short) 0xEE38, (short) 0xE9E8,
(short) 0xE5E8, (short) 0xE3E0, (short) 0xE4A0, (short) 0xE608,
(short) 0xE738, (short) 0xE858, (short) 0xE980, (short) 0xEC20,
(short) 0xF030, (short) 0xF450, (short) 0xF878, (short) 0xFC68,
(short) 0xFF68, (short) 0x03C8, (short) 0x08B8, (short) 0x0D00,
(short) 0x1038, (short) 0x12D8, (short) 0x1490, (short) 0x1648,
(short) 0x16B8, (short) 0x1468, (short) 0x1160, (short) 0x0FA8,
(short) 0x1038, (short) 0x1058, (short) 0x0F88, (short) 0x0E50,
(short) 0x0CC8, (short) 0x0CC0, (short) 0x0FC0, (short) 0x1220,
(short) 0x12A0, (short) 0x10F8, (short) 0x0F20, (short) 0x0D28,
(short) 0x0C78, (short) 0x0BB8, (short) 0x08D0, (short) 0x01C8,
(short) 0xFB38, (short) 0xF660, (short) 0xF330, (short) 0xF078,
(short) 0xEC28, (short) 0xE6C8, (short) 0xE2C0, (short) 0xE050,
(short) 0xDFC8, (short) 0xE038, (short) 0xE160, (short) 0xE300,
(short) 0xE568, (short) 0xE6B8, (short) 0xE9A0, (short) 0xED50,
(short) 0xF238, (short) 0xF6D8, (short) 0xFB08, (short) 0xFF10,
(short) 0x02E8, (short) 0x06A0, (short) 0x0AC0, (short) 0x0DC8,
(short) 0x1010, (short) 0x1168, (short) 0x1018, (short) 0x0E90,
(short) 0x0BF8, (short) 0x0B08, (short) 0x0A50, (short) 0x09F0,
(short) 0x0960, (short) 0x0888, (short) 0x0808, (short) 0x09C8,
(short) 0x0BA8, (short) 0x0EE8, (short) 0x1070, (short) 0x10D0,
(short) 0x0F58, (short) 0x0D60, (short) 0x0BA0, (short) 0x0A60,
(short) 0x08F0, (short) 0x0608, (short) 0xFFB0, (short) 0xF938,
(short) 0xF360, (short) 0xF030, (short) 0xEE20, (short) 0xEB70,
(short) 0xE7A8, (short) 0xE410, (short) 0xE140, (short) 0xDFC8,
(short) 0xDFF8, (short) 0xE1F0, (short) 0xE448, (short) 0xE6D0,
(short) 0xE780, (short) 0xE9E8, (short) 0xECF0, (short) 0xF248,
(short) 0xF730, (short) 0xFBC0, (short) 0xFF80, (short) 0x0310,
(short) 0x0670, (short) 0x0A98, (short) 0x0D88, (short) 0x0FD8,
(short) 0x10C0, (short) 0x0EB0, (short) 0x0C48, (short) 0x08B8,
(short) 0x0998, (short) 0x0AC0, (short) 0x0C68, (short) 0x0B78,
(short) 0x09C8, (short) 0x0838, (short) 0x08F8, (short) 0x0A80,
(short) 0x0CA0, (short) 0x0E10, (short) 0x0E48, (short) 0x0D58,
(short) 0x0A28, (short) 0x0750, (short) 0x04F0, (short) 0x0228,
(short) 0xFEE8, (short) 0xFA80, (short) 0xF468, (short) 0xEED0,
(short) 0xEAE0, (short) 0xE8B8, (short) 0xE718, (short) 0xE5B0,
(short) 0xE4A8, (short) 0xE410, (short) 0xE480, (short) 0xE548,
(short) 0xE738, (short) 0xE9B0, (short) 0xED80, (short) 0xF0B8,
(short) 0xF480, (short) 0xF7B0, (short) 0xFB70, (short) 0xFED0,
(short) 0x0328, (short) 0x0720, (short) 0x0A98, (short) 0x0E00,
(short) 0x10F8, (short) 0x12E0, (short) 0x12A8, (short) 0x11B0,
(short) 0x0F58, (short) 0x0F38, (short) 0x0E88, (short) 0x0F08,
(short) 0x0FC0, (short) 0x0FF0, (short) 0x10B8, (short) 0x1138,
(short) 0x1198, (short) 0x13D0, (short) 0x1638, (short) 0x17E8,
(short) 0x1758, (short) 0x1628, (short) 0x1460, (short) 0x10E8,
(short) 0x0CA0, (short) 0x0848, (short) 0x0280, (short) 0xFC90,
(short) 0xF700, (short) 0xF0F8, (short) 0xEB18, (short) 0xE638,
(short) 0xE1B8, (short) 0xDE78, (short) 0xDC58, (short) 0xDBB8,
(short) 0xDC28, (short) 0xDDB0, (short) 0xE030, (short) 0xE330,
(short) 0xE6F0, (short) 0xEC20, (short) 0xF210, (short) 0xF7C0,
(short) 0xFCE0, (short) 0x0150, (short) 0x0570, (short) 0x08F0,
(short) 0x0C70, (short) 0x0F50, (short) 0x12B8, (short) 0x1560,
(short) 0x16E0, (short) 0x1630, (short) 0x14E8, (short) 0x1298,
(short) 0x11B8, (short) 0x1170, (short) 0x11B8, (short) 0x11C0,
(short) 0x0FE8, (short) 0x0E58, (short) 0x0CB8, (short) 0x0C50,
(short) 0x0D68, (short) 0x0E98, (short) 0x0E30, (short) 0x0C28,
(short) 0x0A10, (short) 0x06D8, (short) 0x02E0, (short) 0xFEA0,
(short) 0xFA18, (short) 0xF4E8, (short) 0xF018, (short) 0xEB68,
(short) 0xE6E8, (short) 0xE310, (short) 0xDFC8, (short) 0xDD38,
(short) 0xDBF8, (short) 0xDC38, (short) 0xDDD0, (short) 0xE070,
(short) 0xE390, (short) 0xE760, (short) 0xEB88, (short) 0xEF20,
(short) 0xF378, (short) 0xF830, (short) 0xFCE0, (short) 0x00F8,
(short) 0x0480, (short) 0x0768, (short) 0x0968, (short) 0x0AE0,
(short) 0x0BB8, (short) 0x0C10, (short) 0x0BB0, (short) 0x0A78,
(short) 0x08E0, (short) 0x06E8, (short) 0x0540, (short) 0x0870,
(short) 0x0BE0, (short) 0x0ED0, (short) 0x0E40, (short) 0x0D10,
(short) 0x0CC8, (short) 0x0E28, (short) 0x0FA0, (short) 0x0FB0,
(short) 0x0F18, (short) 0x0DD0, (short) 0x0BC8, (short) 0x08E8,
(short) 0x0628, (short) 0x0300, (short) 0xFF18, (short) 0xFB40,
(short) 0xF780, (short) 0xF388, (short) 0xF028, (short) 0xED80,
(short) 0xEB18, (short) 0xE968, (short) 0xE8C0, (short) 0xE738,
(short) 0xE658, (short) 0xE698, (short) 0xE888, (short) 0xEB38,
(short) 0xEDA0, (short) 0xF178, (short) 0xF5B8, (short) 0xFA28,
(short) 0xFEA8, (short) 0x0300, (short) 0x06C8, (short) 0x0960,
(short) 0x0B70, (short) 0x0CE0, (short) 0x0D70, (short) 0x0D50,
(short) 0x0C60, (short) 0x0890, (short) 0x0418, (short) 0x0028,
(short) 0x01D0, (short) 0x03F8, (short) 0x05A8, (short) 0x0700,
(short) 0x0808, (short) 0x09A0, (short) 0x0B18, (short) 0x0CC8,
(short) 0x0D90, (short) 0x0E68, (short) 0x0EC0, (short) 0x0E30,
(short) 0x0C28, (short) 0x09D8, (short) 0x0730, (short) 0x0308,
(short) 0xFED8, (short) 0xFAC0, (short) 0xF598, (short) 0xF0D8,
(short) 0xECE0, (short) 0xEAA8, (short) 0xE948, (short) 0xE8D0,
(short) 0xE850, (short) 0xE888, (short) 0xE910, (short) 0xEAD0,
(short) 0xED68, (short) 0xF018, (short) 0xF350, (short) 0xF6B8,
(short) 0xFAE0, (short) 0xFF00, (short) 0x02D8, (short) 0x05E8,
(short) 0x0830, (short) 0x09F8, (short) 0x0B08, (short) 0x0B80,
(short) 0x0B60, (short) 0x0988, (short) 0x0648, (short) 0x02D0,
(short) 0x0150, (short) 0x01E8, (short) 0x0270, (short) 0x03E0,
(short) 0x0538, (short) 0x0658, (short) 0x0918, (short) 0x0C00,
(short) 0x0E88, (short) 0x10B8, (short) 0x12A0, (short) 0x13E0,
(short) 0x1488, (short) 0x1448, (short) 0x1368, (short) 0x1120,
(short) 0x0DD0, (short) 0x0A40, (short) 0x0608, (short) 0x0148,
(short) 0xFC80, (short) 0xF860, (short) 0xF4D8, (short) 0xF1C0,
(short) 0xF008, (short) 0xEF38, (short) 0xEE78, (short) 0xEE98,
(short) 0xEF90, (short) 0xF170, (short) 0xF390, (short) 0xF5C0,
(short) 0xF888, (short) 0xFB48, (short) 0xFDF0, (short) 0x0078,
(short) 0x03D0, (short) 0x06C8, (short) 0x08F8, (short) 0x0AA0,
(short) 0x0BC8, (short) 0x0C48, (short) 0x0B30, (short) 0x0978,
(short) 0x06A8, (short) 0x0530, (short) 0x03F0, (short) 0x0438,
(short) 0x03C0, (short) 0x0350, (short) 0x0360, (short) 0x04E8,
(short) 0x0698, (short) 0x07D0, (short) 0x08D0, (short) 0x0998,
(short) 0x0A70, (short) 0x0B48, (short) 0x0B70, (short) 0x0AD0,
(short) 0x09C0, (short) 0x0890, (short) 0x0730, (short) 0x0588,
(short) 0x0358, (short) 0x0140, (short) 0xFF58, (short) 0xFD40,
(short) 0xFB68, (short) 0xF9E8, (short) 0xF828, (short) 0xF6D0,
(short) 0xF608, (short) 0xF5D8, (short) 0xF610, (short) 0xF668,
(short) 0xF778, (short) 0xF8E8, (short) 0xFA48, (short) 0xFCC8,
(short) 0xFF50, (short) 0x01C8, (short) 0x0428, (short) 0x0640,
(short) 0x07D0, (short) 0x09D0, (short) 0x0B40, (short) 0x0BF8,
(short) 0x0C30, (short) 0x0C08, (short) 0x0B08, (short) 0x0988,
(short) 0x07C0, (short) 0x0670, (short) 0x0608, (short) 0x0590,
(short) 0x0588, (short) 0x05B0, (short) 0x05E0, (short) 0x06B8,
(short) 0x0748, (short) 0x0758, (short) 0x0700, (short) 0x06A8,
(short) 0x0620, (short) 0x05D8, (short) 0x0590, (short) 0x0528,
(short) 0x03A8, (short) 0x0240, (short) 0x0108, (short) 0xFF38,
(short) 0xFD50, (short) 0xFBA0, (short) 0xFA38, (short) 0xF920,
(short) 0xF860, (short) 0xF6E8, (short) 0xF640, (short) 0xF628,
(short) 0xF680, (short) 0xF720, (short) 0xF800, (short) 0xF8E0,
(short) 0xF9A0, (short) 0xFA78, (short) 0xFB88, (short) 0xFD20,
(short) 0xFEA0, (short) 0x0008, (short) 0x0110, (short) 0x0200,
(short) 0x0360, (short) 0x04E0, (short) 0x0608, (short) 0x0738,
(short) 0x0838, (short) 0x08D8, (short) 0x0828, (short) 0x0738,
(short) 0x0600, (short) 0x04A8, (short) 0x02E0, (short) 0x0130,
(short) 0xFFA0, (short) 0xFF48, (short) 0xFF10, (short) 0xFEF0,
(short) 0xFF30, (short) 0xFFD0, (short) 0x0090, (short) 0x0090,
(short) 0x0070, (short) 0x0060, (short) 0xFFE8, (short) 0xFF50,
(short) 0xFEB8, (short) 0xFE98, (short) 0xFE88, (short) 0xFE80,
(short) 0xFE58, (short) 0xFE50, (short) 0xFE58, (short) 0xFDB0,
(short) 0xFD08, (short) 0xFC80, (short) 0xFAF8, (short) 0xF988,
(short) 0xF860, (short) 0xF798, (short) 0xF720, (short) 0xF6E8,
(short) 0xF728, (short) 0xF7C0, (short) 0xF8A8, (short) 0xF8F8,
(short) 0xF960, (short) 0xFA18, (short) 0xFAC0, (short) 0xFB58,
(short) 0xFC18, (short) 0xFCE0, (short) 0xFDA0, (short) 0xFE20,
(short) 0xFE88, (short) 0xFEF8, (short) 0xFEF0, (short) 0xFEC8,
(short) 0xFEA8, (short) 0xFDE0, (short) 0xFD10, (short) 0xFC70,
(short) 0xFBA8, (short) 0xFB10, (short) 0xFAB8, (short) 0xFAA0,
(short) 0xFAD0, (short) 0xFB18, (short) 0xFA90, (short) 0xFA18,
(short) 0xFA10, (short) 0xFA80, (short) 0xFB10, (short) 0xFB88,
(short) 0xFC90, (short) 0xFDB8, (short) 0xFEB8, (short) 0xFF80,
(short) 0x0058, (short) 0x0138, (short) 0x0118, (short) 0x00C8,
(short) 0x00C0, (short) 0xFF98, (short) 0xFE30, (short) 0xFD38,
(short) 0xFC68, (short) 0xFB78, (short) 0xFAB8, (short) 0xFAE8,
(short) 0xFB78, (short) 0xFBD0, (short) 0xFBE8, (short) 0xFC18,
(short) 0xFC98, (short) 0xFD28, (short) 0xFD48, (short) 0xFD68,
(short) 0xFD68, (short) 0xFD90, (short) 0xFDB8, (short) 0xFD90,
(short) 0xFD68, (short) 0xFD78, (short) 0xFCA0, (short) 0xFB70,
(short) 0xFAD0, (short) 0xF9F0, (short) 0xF870, (short) 0xF748,
(short) 0xF748, (short) 0xF770, (short) 0xF748, (short) 0xF720,
(short) 0xF7A8, (short) 0xF878, (short) 0xF930, (short) 0xF998,
(short) 0xFA38, (short) 0xFC10, (short) 0xFDA0, (short) 0xFE70,
(short) 0x0030, (short) 0x0248, (short) 0x03A0, (short) 0x0568,
(short) 0x0738, (short) 0x0870, (short) 0x0960, (short) 0x0A10,
(short) 0x0A40, (short) 0x0A28, (short) 0x09B8, (short) 0x08E8,
(short) 0x07E8, (short) 0x06E0, (short) 0x0588, (short) 0x0430,
(short) 0x0300, (short) 0x0260, (short) 0x01D0, (short) 0x0118,
(short) 0xFFB0, (short) 0xFE98, (short) 0xFE18, (short) 0xFDA0,
(short) 0xFD08, (short) 0xFCB8, (short) 0xFCF8, (short) 0xFD60,
(short) 0xFD90, (short) 0xFD90, (short) 0xFDD8, (short) 0xFE50,
(short) 0xFDA0, (short) 0xFCE0, (short) 0xFCC0, (short) 0xFCE8,
(short) 0xFCB0, (short) 0xFC60, (short) 0xFC70, (short) 0xFCB8,
(short) 0xFCE0, (short) 0xFD40, (short) 0xFDD8, (short) 0xFE68,
(short) 0xFF78, (short) 0x0068, (short) 0x0108, (short) 0x0278,
(short) 0x03A0, (short) 0x0420, (short) 0x0590, (short) 0x0708,
(short) 0x07B8, (short) 0x07D8, (short) 0x0808, (short) 0x0838,
(short) 0x07D8, (short) 0x06E8, (short) 0x0600, (short) 0x05B0,
(short) 0x0518, (short) 0x0410, (short) 0x02A0, (short) 0x0198,
(short) 0x00D0, (short) 0x00C8, (short) 0x00B0, (short) 0x0068,
(short) 0x00C0, (short) 0x0150, (short) 0x0180, (short) 0x0220,
(short) 0x02D8, (short) 0x0340, (short) 0x0360, (short) 0x0380,
(short) 0x0380, (short) 0x0338, (short) 0x02C8, (short) 0x02B8,
(short) 0x0280, (short) 0x0200, (short) 0x0100, (short) 0x0098,
(short) 0x0080, (short) 0x0020, (short) 0xFFF0, (short) 0x0000,
(short) 0x0020, (short) 0x0098, (short) 0x0120, (short) 0x0170,
(short) 0x0230, (short) 0x02F0, (short) 0x0350, (short) 0x0480,
(short) 0x05B8, (short) 0x0650, (short) 0x06A8, (short) 0x0738,
(short) 0x0798, (short) 0x07B0, (short) 0x07C0, (short) 0x0798,
(short) 0x0668, (short) 0x0598, (short) 0x0530, (short) 0x04C8,
(short) 0x0410, (short) 0x0350, (short) 0x0278, (short) 0x01D8,
(short) 0x0148, (short) 0x0080, (short) 0x0000, (short) 0xFFC0,
(short) 0xFFD8, (short) 0xFFA8, (short) 0xFF60, (short) 0xFF80,
(short) 0x0018, (short) 0x0070, (short) 0xFFE0, (short) 0xFF88,
(short) 0xFFC0, (short) 0xFF38, (short) 0xFE98, (short) 0xFE50,
(short) 0xFE10, (short) 0xFDD8, (short) 0xFD90, (short) 0xFD30,
(short) 0xFDB8, (short) 0xFE68, (short) 0xFE70, (short) 0xFE60,
(short) 0xFE70, (short) 0xFED0, (short) 0xFF90, (short) 0xFFE0,
(short) 0xFFF0, (short) 0x00A8, (short) 0x0168, (short) 0x01D0,
(short) 0x01F8, (short) 0x0210, (short) 0x0278, (short) 0x0268,
(short) 0x0208, (short) 0x0220, (short) 0x01F8, (short) 0x0198,
(short) 0x0158, (short) 0x0100, (short) 0x00C0, (short) 0x00A0,
(short) 0x0018, (short) 0xFF98, (short) 0xFF28, (short) 0xFEC0,
(short) 0xFE80, (short) 0xFE60, (short) 0xFD88, (short) 0xFCF0,
(short) 0xFCC8, (short) 0xFC70, (short) 0xFC10, (short) 0xFBC8,
(short) 0xFBB0, (short) 0xFBE8, (short) 0xFBE8, (short) 0xFB80,
(short) 0xFB88, (short) 0xFB40, (short) 0xFB18, (short) 0xFB20,
(short) 0xFAB8, (short) 0xFA50, (short) 0xFA50, (short) 0xFAB8,
(short) 0xFAF8, (short) 0xFB18, (short) 0xFBB0, (short) 0xFC88,
(short) 0xFD10, (short) 0xFD40, (short) 0xFD98, (short) 0xFE38,
(short) 0xFEE0, (short) 0xFEF8, (short) 0xFEF0, (short) 0xFF18,
(short) 0xFF18, (short) 0xFF18, (short) 0xFF68, (short) 0xFF98,
(short) 0xFF98, (short) 0xFFD0, (short) 0xFFF8, (short) 0x0048,
(short) 0x0038, (short) 0x0008, (short) 0x0008, (short) 0xFFE0,
(short) 0xFFB0, (short) 0xFFB8, (short) 0xFED0, (short) 0xFE18,
(short) 0xFE18, (short) 0xFDF0, (short) 0xFE38, (short) 0xFE90,
(short) 0xFE90, (short) 0xFDA8, (short) 0xFD48, (short) 0xFD70,
(short) 0xFD68, (short) 0xFD00, (short) 0xFCB8, (short) 0xFCB8,
(short) 0xFCF8, (short) 0xFD00, (short) 0xFC30, (short) 0xFBD0,
(short) 0xFC10, (short) 0xFC20, (short) 0xFBE0, (short) 0xFBA8,
(short) 0xFC30, (short) 0xFD00, (short) 0xFD50, (short) 0xFD90,
(short) 0xFE10, (short) 0xFEA8, (short) 0xFF40, (short) 0xFFA0,
(short) 0xFFD0, (short) 0xFFC8, (short) 0xFFC8, (short) 0xFFD8,
(short) 0xFFA0, (short) 0xFF98, (short) 0xFFB8, (short) 0x0050,
(short) 0x00B8, (short) 0x00B0, (short) 0x01B0, (short) 0x02E0,
(short) 0x0318, (short) 0x0330, (short) 0x02E0, (short) 0x02C8,
(short) 0x0278, (short) 0x0150, (short) 0x0050, (short) 0xFFC0,
(short) 0xFF88, (short) 0xFF18, (short) 0xFE90, (short) 0xFE40,
(short) 0xFE30, (short) 0xFDE8, (short) 0xFDD0, (short) 0xFD70,
(short) 0xFD48, (short) 0xFD10, (short) 0xFC98, (short) 0xFC38,
(short) 0xFC38, (short) 0xFC78, (short) 0xFC98, (short) 0xFCF0,
(short) 0xFDA8, (short) 0xFE48, (short) 0xFEC8, (short) 0xFF30,
(short) 0xFF98, (short) 0x0000, (short) 0x0050, (short) 0x0058,
(short) 0x00A8, (short) 0x00E8, (short) 0x00D0, (short) 0x0138,
(short) 0x01E0, (short) 0x0218, (short) 0x0208, (short) 0x0230,
(short) 0x0258, (short) 0x0248, (short) 0x02B0, (short) 0x0318,
(short) 0x0330, (short) 0x0358, (short) 0x0380, (short) 0x0378,
(short) 0x0408, (short) 0x0480, (short) 0x0460, (short) 0x03C8,
(short) 0x0318, (short) 0x02B0, (short) 0x01E8, (short) 0x00B8,
(short) 0xFFD8, (short) 0xFF30, (short) 0xFEC8, (short) 0xFE60,
(short) 0xFE60, (short) 0xFE78, (short) 0xFE78, (short) 0xFDC0,
(short) 0xFD70, (short) 0xFD50, (short) 0xFD08, (short) 0xFC88,
(short) 0xFC28, (short) 0xFC98, (short) 0xFD18, (short) 0xFD60,
(short) 0xFD60, (short) 0xFDD8, (short) 0xFE90, (short) 0xFEE8,
(short) 0xFF10, (short) 0xFF58, (short) 0xFF90, (short) 0xFFB8,
(short) 0xFFE0, (short) 0xFFF0, (short) 0xFFF0, (short) 0x00D0,
(short) 0x0190, (short) 0x01C8, (short) 0x0180, (short) 0x0188,
(short) 0x01B0, (short) 0x0238, (short) 0x0298, (short) 0x02B8,
(short) 0x0268, (short) 0x0258, (short) 0x0258, (short) 0x0230,
(short) 0x0228, (short) 0x0230, (short) 0x0258, (short) 0x0248,
(short) 0x01F8, (short) 0x0150, (short) 0x00C8, (short) 0x0058,
(short) 0x0058, (short) 0x0038, (short) 0x0000, (short) 0xFF50,
(short) 0xFF00, (short) 0xFEF8, (short) 0xFE80, (short) 0xFDB8,
(short) 0xFD70, (short) 0xFD00, (short) 0xFC90, (short) 0xFC40,
(short) 0xFC28, (short) 0xFC58, (short) 0xFC98, (short) 0xFD10,
(short) 0xFD78, (short) 0xFDE0, (short) 0xFE80, (short) 0xFF08,
(short) 0xFF60, (short) 0xFFD0, (short) 0x0030, (short) 0x0068,
(short) 0x0110, (short) 0x0198, (short) 0x01C0, (short) 0x0208,
(short) 0x0260, (short) 0x0280, (short) 0x0320, (short) 0x0390,
(short) 0x0398, (short) 0x0410, (short) 0x0488, (short) 0x04A0,
(short) 0x0448, (short) 0x0408, (short) 0x03E0, (short) 0x03C8,
(short) 0x0398, (short) 0x0350, (short) 0x0308, (short) 0x02C8,
(short) 0x0278, (short) 0x01D8, (short) 0x0148, (short) 0x00E8,
(short) 0x0040, (short) 0xFFA0, (short) 0xFF50, (short) 0xFDC0,
(short) 0xFC88, (short) 0xFC30, (short) 0xFB88, (short) 0xFAA8,
(short) 0xFA50, (short) 0xFA30, (short) 0xFA40, (short) 0xFA70,
(short) 0xFAB8, (short) 0xFAE0, (short) 0xFB28, (short) 0xFB58,
(short) 0xFB80, (short) 0xFBB0, (short) 0xFC00, (short) 0xFC80,
(short) 0xFCF0, (short) 0xFDB8, (short) 0xFE58, (short) 0xFED8,
(short) 0x0008, (short) 0x0100, (short) 0x0180, (short) 0x01D0,
(short) 0x0210, (short) 0x0248, (short) 0x0238, (short) 0x0200,
(short) 0x01D0, (short) 0x02D0, (short) 0x03A0, (short) 0x03D8,
(short) 0x03C0, (short) 0x03D8, (short) 0x03F8, (short) 0x0370,
(short) 0x02C0, (short) 0x0258, (short) 0x01B8, (short) 0x0120,
(short) 0x0090, (short) 0x0088, (short) 0x00A8, (short) 0x00A8,
(short) 0x0088, (short) 0x0068, (short) 0x0060, (short) 0xFFE0,
(short) 0xFF00, (short) 0xFE50, (short) 0xFDC8, (short) 0xFCF0,
(short) 0xFC30, (short) 0xFBB0, (short) 0xFBD8, (short) 0xFC20,
(short) 0xFC58, (short) 0xFC30, (short) 0xFC40, (short) 0xFC78,
(short) 0xFCC0, (short) 0xFCE8, (short) 0xFD10, (short) 0xFD48,
(short) 0xFD88, (short) 0xFDE8, (short) 0xFF10, (short) 0x0020,
(short) 0x0110, (short) 0x01B8, (short) 0x0248, (short) 0x02C0,
(short) 0x0358, (short) 0x03B8, (short) 0x03C8, (short) 0x0320,
(short) 0x0288, (short) 0x0280, (short) 0x0300, (short) 0x0340,
(short) 0x0320, (short) 0x0380, (short) 0x03F8, (short) 0x0418,
(short) 0x0378, (short) 0x02E0, (short) 0x0288, (short) 0x0280,
(short) 0x0238, (short) 0x01D0, (short) 0x0168, (short) 0x0138,
(short) 0x0110, (short) 0x0140, (short) 0x0148, (short) 0x0150,
(short) 0x00A8, (short) 0x0010, (short) 0xFFB0, (short) 0xFEB8,
(short) 0xFDE0, (short) 0xFD48, (short) 0xFCE8, (short) 0xFCA8,
(short) 0xFC78, (short) 0xFC48, (short) 0xFC50, (short) 0xFC70,
(short) 0xFCA8, (short) 0xFCE8, (short) 0xFD28, (short) 0xFDD0,
(short) 0xFE70, (short) 0xFED8, (short) 0x0040, (short) 0x0188,
(short) 0x0258, (short) 0x03C0, (short) 0x04F0, (short) 0x05B8,
(short) 0x0638, (short) 0x0670, (short) 0x0690, (short) 0x0708,
(short) 0x0708, (short) 0x06B8, (short) 0x0660, (short) 0x0650,
(short) 0x0630, (short) 0x05C8, (short) 0x0578, (short) 0x0548,
(short) 0x0508, (short) 0x0470, (short) 0x03D0, (short) 0x0350,
(short) 0x0278, (short) 0x01A0, (short) 0x00F8, (short) 0x00B0,
(short) 0x0078, (short) 0x0030, (short) 0xFFE8, (short) 0xFFC8,
(short) 0xFFB8, (short) 0xFED0, (short) 0xFE08, (short) 0xFD98,
(short) 0xFC70, (short) 0xFB60, (short) 0xFAA8, (short) 0xFA10,
(short) 0xF9B8, (short) 0xF980, (short) 0xF9A0, (short) 0xFA00,
(short) 0xFA68, (short) 0xFB90, (short) 0xFCB8, (short) 0xFD98,
(short) 0xFE68, (short) 0xFF18, (short) 0xFFC0, (short) 0x0078,
(short) 0x00F8, (short) 0x0218, (short) 0x0320, (short) 0x03C0,
(short) 0x0478, (short) 0x0510, (short) 0x0570, (short) 0x05D8,
(short) 0x05E0, (short) 0x05B8, (short) 0x0508, (short) 0x0468,
(short) 0x03E0, (short) 0x02F0, (short) 0x0218, (short) 0x0168,
(short) 0x00F0, (short) 0x0060, (short) 0xFFD0, (short) 0xFF58,
(short) 0xFEC0, (short) 0xFE48, (short) 0xFDB0, (short) 0xFD58,
(short) 0xFD38, (short) 0xFCD8, (short) 0xFC80, (short) 0xFC50,
(short) 0xFC08, (short) 0xFB48, (short) 0xFA98, (short) 0xF9F8,
(short) 0xF8F8, (short) 0xF810, (short) 0xF7F8, (short) 0xF818,
(short) 0xF848, (short) 0xF8E8, (short) 0xF9E0, (short) 0xFB08,
(short) 0xFC38, (short) 0xFD10, (short) 0xFDE8, (short) 0xFF10,
(short) 0xFFD0, (short) 0x0048, (short) 0x00E0, (short) 0x0160,
(short) 0x01B8, (short) 0x01C8, (short) 0x01E0, (short) 0x0200,
(short) 0x0228, (short) 0x0240, (short) 0x0240, (short) 0x0240,
(short) 0x0260, (short) 0x0280, (short) 0x0280, (short) 0x02F0,
(short) 0x0370, (short) 0x03C8, (short) 0x03C8, (short) 0x03A8,
(short) 0x03A0, (short) 0x02F8, (short) 0x0220, (short) 0x0150,
(short) 0x0098, (short) 0xFFE0, (short) 0xFF20, (short) 0xFEA0,
(short) 0xFE50, (short) 0xFE18, (short) 0xFD38, (short) 0xFC60,
(short) 0xFBE0, (short) 0xFAC8, (short) 0xF9A0, (short) 0xF8B8,
(short) 0xF830, (short) 0xF888, (short) 0xF8B8, (short) 0xF908,
(short) 0xFA80, (short) 0xFBF8, (short) 0xFD48, (short) 0xFEC8,
(short) 0x0040, (short) 0x01B0, (short) 0x0298, (short) 0x0338,
(short) 0x03C0, (short) 0x0470, (short) 0x0520, (short) 0x0588,
(short) 0x0610, (short) 0x0688, (short) 0x06C8, (short) 0x0670,
(short) 0x05E8, (short) 0x0578, (short) 0x0580, (short) 0x0578,
(short) 0x0528, (short) 0x0498, (short) 0x0408, (short) 0x0390,
(short) 0x03F8, (short) 0x0458, (short) 0x0488, (short) 0x0468,
(short) 0x0450, (short) 0x0458, (short) 0x03A8, (short) 0x02D0,
(short) 0x0210, (short) 0x0158, (short) 0x0088, (short) 0xFFA8,
(short) 0xFF00, (short) 0xFE88, (short) 0xFE30, (short) 0xFD88,
(short) 0xFCB8, (short) 0xFC28, (short) 0xFB30, (short) 0xF9F0,
(short) 0xF8E8, (short) 0xF890, (short) 0xF890, (short) 0xF8C0,
(short) 0xF978, (short) 0xFA78, (short) 0xFBE8, (short) 0xFD20,
(short) 0xFE28, (short) 0xFF60, (short) 0x00D8, (short) 0x0220,
(short) 0x02F8, (short) 0x0378, (short) 0x03E0, (short) 0x0438,
(short) 0x0488, (short) 0x0498, (short) 0x04A8, (short) 0x0480,
(short) 0x0440, (short) 0x03C0, (short) 0x02D8, (short) 0x01E8,
(short) 0x0140, (short) 0x00D8, (short) 0x0068, (short) 0xFFE0,
(short) 0x0068, (short) 0x0130, (short) 0x0228, (short) 0x0260,
(short) 0x0278, (short) 0x02D0, (short) 0x02D8, (short) 0x0290,
(short) 0x01E0, (short) 0x00D0, (short) 0xFFE0, (short) 0xFEF8,
(short) 0xFE08, (short) 0xFD28, (short) 0xFC88, (short) 0xFBE0,
(short) 0xFB60, (short) 0xFAD8, (short) 0xFA08, (short) 0xF978,
(short) 0xF8E8, (short) 0xF8B0, (short) 0xF8B0, (short) 0xF8D0,
(short) 0xF9D0, (short) 0xFAF8, (short) 0xFC18, (short) 0xFDB0,
(short) 0xFF38, (short) 0x00A0, (short) 0x01F8, (short) 0x02F8,
(short) 0x03C0, (short) 0x0460, (short) 0x04B8, (short) 0x04C8,
(short) 0x04C8, (short) 0x04C0, (short) 0x0498, (short) 0x0490,
(short) 0x0478, (short) 0x0448, (short) 0x0420, (short) 0x03F8,
(short) 0x0328, (short) 0x0238, (short) 0x01B0, (short) 0x0170,
(short) 0x0128, (short) 0x0090, (short) 0x00E8, (short) 0x01B8,
(short) 0x02B8, (short) 0x0280, (short) 0x0218, (short) 0x0218,
(short) 0x01F0, (short) 0x0148, (short) 0x0000, (short) 0xFEC0,
(short) 0xFE08, (short) 0xFD70, (short) 0xFCA0, (short) 0xFBF0,
(short) 0xFBC0, (short) 0xFBA0, (short) 0xFB80, (short) 0xFB18,
(short) 0xFB28, (short) 0xFB98, (short) 0xFBC0, (short) 0xFBD0,
(short) 0xFC08, (short) 0xFC78, (short) 0xFDC8, (short) 0xFEC8,
(short) 0xFF78, (short) 0x00D0, (short) 0x0238, (short) 0x0360,
(short) 0x0398, (short) 0x0360, (short) 0x0368, (short) 0x0380,
(short) 0x0318, (short) 0x0250, (short) 0x0208, (short) 0x0220,
(short) 0x0218, (short) 0x01F0, (short) 0x01C8, (short) 0x0210,
(short) 0x0270, (short) 0x0270, (short) 0x0240, (short) 0x0290,
(short) 0x0310, (short) 0x0360, (short) 0x0340, (short) 0x0310,
(short) 0x0318, (short) 0x0320, (short) 0x02D8, (short) 0x0240,
(short) 0x0158, (short) 0x00A0, (short) 0x0008, (short) 0xFF30,
(short) 0xFE50, (short) 0xFDA8, (short) 0xFD28, (short) 0xFCC8,
(short) 0xFC60, (short) 0xFBA8, (short) 0xFB40, (short) 0xFB10,
(short) 0xFB18, (short) 0xFB28, (short) 0xFB48, (short) 0xFB68,
(short) 0xFBA8, (short) 0xFBF8, (short) 0xFCB8, (short) 0xFD78,
(short) 0xFE00, (short) 0xFE88, (short) 0xFF30, (short) 0xFF98,
(short) 0xFFC8, (short) 0xFFE8, (short) 0x0050, (short) 0x00B0,
(short) 0x00E0, (short) 0x0040, (short) 0xFF68, (short) 0xFED8,
(short) 0xFEE8, (short) 0xFEE0, (short) 0xFE90, (short) 0xFEA8,
(short) 0xFF88, (short) 0x0080, (short) 0x0188, (short) 0x0208,
(short) 0x0290, (short) 0x0390, (short) 0x0438, (short) 0x0450,
(short) 0x0428, (short) 0x03F8, (short) 0x03E0, (short) 0x0388,
(short) 0x02E0, (short) 0x0240, (short) 0x0190, (short) 0x00D0,
(short) 0x0000, (short) 0x0000, (short) 0x0018, (short) 0x00FF,
(short) 0x0068, (short) 0x00FE, (short) 0x00F8, (short) 0x00FD};
gsm_byte gsm_enc_gsmdata[] = {
0xD5, 0x1F, 0x74, 0x21, 0xA0, 0x50, 0x40, 0xC9, 0x24, 0x7B, 0xFA, 0x6B,
0x52, 0xE0, 0xB6, 0xD6, 0x8E, 0xB9, 0x2B, 0xAE, 0xE0, 0x8B, 0x23, 0x52,
0x3B, 0x13, 0x86, 0xE0, 0x14, 0x4A, 0x41, 0x44, 0x32, 0xD3, 0xA1, 0x83,
0xA1, 0x1D, 0xA6, 0x80, 0xBA, 0xD2, 0x96, 0x26, 0xFB, 0x84, 0x80, 0x6D,
0x9C, 0x25, 0x1D, 0x9B, 0xAA, 0xC0, 0xBB, 0x4C, 0x95, 0xB9, 0x53, 0xAE,
0xA0, 0xB6, 0xE4, 0x46, 0x37, 0x1B, 0xD4, 0xA5, 0x7B, 0x1D, 0x22, 0x97,
0x00, 0xBA, 0xA5, 0x6D, 0xD2, 0xA1, 0x7E, 0xC0, 0xB9, 0x25, 0xD2, 0xB4,
0x94, 0x9E, 0xE0, 0x3E, 0xDE, 0xED, 0xD6, 0xD2, 0xE2, 0xC0, 0xD7, 0x5D,
0x8D, 0x59, 0xAC, 0xD3, 0xE4, 0x83, 0x95, 0x59, 0xC0, 0xA1, 0x48, 0xD2,
0x66, 0xC7, 0x2C, 0x9E, 0xA0, 0x2A, 0xD3, 0xEE, 0x45, 0x1C, 0x80, 0xE0,
0x6B, 0x34, 0x8C, 0x4B, 0x29, 0xCB, 0x00, 0xBA, 0xF6, 0x0D, 0x26, 0x9A,
0xD3, 0xA4, 0x82, 0x9D, 0x63, 0x7A, 0xC0, 0x67, 0x24, 0xBA, 0xD6, 0x7C,
0xC2, 0xC0, 0x37, 0x20, 0x4F, 0x10, 0xE0, 0xC7, 0x80, 0x6A, 0x77, 0x63,
0xBE, 0x6B, 0x5A, 0xC0, 0xB5, 0x34, 0xD1, 0x34, 0x9C, 0xD4, 0xE8, 0x56,
0xB2, 0x58, 0x5F, 0x00, 0xB7, 0xAF, 0x92, 0x12, 0x90, 0xD5, 0xA4, 0x39,
0x23, 0x4E, 0x46, 0x87, 0x51, 0xAC, 0xD8, 0xDB, 0x6D, 0xCB, 0x17, 0x50,
0x89, 0x7B, 0x44, 0x28, 0x03, 0x6B, 0xD5, 0xA9, 0x36, 0x36, 0xD9, 0x6B,
0xA8, 0x93, 0x3A, 0x96, 0xEE, 0xFF, 0x67, 0x8B, 0x36, 0xDA, 0x09, 0xB4,
0x99, 0x67, 0x2B, 0x88, 0xE4, 0xB5, 0xA5, 0xDA, 0x65, 0x47, 0xDA, 0x1E,
0x96, 0xFA, 0xEC, 0xD5, 0xA9, 0x45, 0x63, 0x1A, 0xCB, 0xC9, 0x48, 0x9D,
0x83, 0x5F, 0x6F, 0xCB, 0x08, 0x1B, 0x97, 0xC9, 0x18, 0x0A, 0x63, 0xCB,
0xA6, 0xE1, 0x84, 0xF5, 0x62, 0x61, 0x6A, 0x84, 0xDC, 0xB6, 0x37, 0x9E,
0xD6, 0xAB, 0x3C, 0x53, 0x93, 0xC1, 0x2A, 0xAA, 0x81, 0x8D, 0x6B, 0x65,
0x60, 0xA8, 0xFB, 0x2E, 0x22, 0x59, 0x74, 0x61, 0xA6, 0x5D, 0x73, 0x94,
0xF8, 0xE4, 0xC1, 0x46, 0x26, 0x5E, 0x8A, 0x86, 0xED, 0xD4, 0xA6, 0x2D,
0x57, 0x6B, 0xBE, 0xE8, 0x58, 0xDA, 0x3D, 0x98, 0x99, 0xBE, 0xA8, 0xC2,
0xDB, 0x6A, 0x2E, 0x51, 0x62, 0xE5, 0x80, 0x58, 0x76, 0xB8, 0xE4, 0x6C,
0x84, 0xCA, 0x98, 0x06, 0x0B, 0xFC, 0xD2, 0x66, 0x7C, 0x62, 0x3A, 0x5B,
0xC5, 0xDF, 0x7D, 0x75, 0x49, 0x1E, 0x52, 0xC7, 0x55, 0xF7, 0x84, 0xA6,
0xDA, 0x5D, 0x43, 0x26, 0x85, 0x98, 0xD8, 0x8F, 0xB6, 0xC5, 0x28, 0xEB,
0x3E, 0x75, 0x04, 0xD2, 0x27, 0xBA, 0x2A, 0x2B, 0xB7, 0x03, 0x13, 0x45,
0x35, 0x1B, 0x78, 0x5F, 0xC3, 0xBA, 0xDB, 0xAE, 0x27, 0xC2, 0x5E, 0xA4,
0x50, 0x8C, 0x8A, 0xBB, 0x4F, 0x60, 0xC3, 0xEE, 0x41, 0x46, 0x4A, 0xDF,
0xD2, 0x27, 0xB2, 0xAD, 0xEB, 0x5F, 0x43, 0x4C, 0x6A, 0x09, 0x2A, 0xCC,
0xB7, 0x47, 0x2A, 0xB9, 0x91, 0xB6, 0xD4, 0x5B, 0x25, 0x58, 0xD8, 0xFD,
0x46, 0x95, 0x5A, 0xC3, 0x27, 0x5B, 0x3F, 0xFB, 0x12, 0xD2, 0x26, 0xC3,
0xA9, 0xA1, 0xB6, 0xA2, 0xCB, 0x1B, 0xD0, 0x73, 0xE4, 0xBA, 0xA1, 0xE9,
0x05, 0xBE, 0x79, 0x23, 0xA4, 0xC2, 0x3A, 0x4B, 0x11, 0xE5, 0x68, 0xC4,
0xC1, 0xBA, 0xC1, 0xCC, 0x8B, 0x02, 0xD2, 0x63, 0x6C, 0xEE, 0x19, 0x5E,
0xE1, 0xB6, 0x4C, 0x1A, 0xB4, 0x5E, 0xF0, 0xC2, 0x27, 0x20, 0x55, 0xBD,
0x6D, 0x64, 0xE1, 0xC7, 0x45, 0xA9, 0x65, 0x6D, 0x7D, 0x42, 0x56, 0xD8,
0xB2, 0xB6, 0xEC, 0xD3, 0x61, 0x5B, 0x62, 0x61, 0x60, 0xA1, 0x5B, 0xD6,
0x15, 0x29, 0x09, 0x6C, 0xA1, 0x3E, 0xAD, 0x65, 0x34, 0xC3, 0xC0, 0xC1,
0x22, 0x6D, 0x4C, 0x57, 0x10, 0xDB, 0x41, 0xD2, 0xE1, 0x77, 0x64, 0xF7,
0xD3, 0x21, 0x73, 0xA9, 0x29, 0x58, 0xC1, 0xA1, 0x5A, 0x52, 0xB7, 0x32,
0x64, 0xC1, 0x67, 0x42, 0x74, 0x2C, 0xDC, 0x61, 0x61, 0x65, 0x8B, 0xCB,
0x04, 0xE5, 0x60, 0xC1, 0xC9, 0x5E, 0x8E, 0x36, 0x83, 0xD2, 0xA2, 0x83,
0xA9, 0xD9, 0xCD, 0x21, 0xB9, 0x25, 0xCD, 0xE6, 0x1D, 0x60, 0xA1, 0xB4,
0xAA, 0x8F, 0xBA, 0x75, 0xC3, 0x01, 0x0B, 0x3B, 0x51, 0xDB, 0xEC, 0x62,
0xE1, 0x38, 0xCD, 0x40, 0x3B, 0xD3, 0xD2, 0x26, 0x94, 0x29, 0xD2, 0x61,
0x21, 0x6B, 0x4A, 0x8D, 0x24, 0xB5, 0xBB, 0x21, 0x12, 0xA5, 0x99, 0xA5,
0x1A, 0xCA, 0xA1, 0xEF, 0x5D, 0xAA, 0xAE, 0xD3, 0x64, 0xE1, 0xA3, 0x6B,
0xAE, 0x35, 0x39, 0xD2, 0x66, 0x73, 0xB6, 0x90, 0xC6, 0xC1, 0x32, 0xD1,
0xBA, 0xC9, 0x25, 0x65, 0x81, 0xA8, 0xD2, 0xB1, 0xE7, 0x18, 0xBE, 0xC0,
0xFC, 0xE4, 0x85, 0xB5, 0x06, 0xB4, 0x81, 0x35, 0x46, 0xB6, 0xC8, 0x9B};
#endif /* end of include guard: DATA_H */

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,54 @@
#ifndef PRIVATE_H
#define PRIVATE_H
typedef short word; /* 16 bit signed int */
typedef long longword; /* 32 bit signed int */
typedef unsigned short uword; /* unsigned word */
typedef unsigned long ulongword; /* unsigned longword */
struct gsm_state {
word dp0[280];
word z1; /* preprocessing.c, Offset_com. */
longword L_z2; /* Offset_com. */
int mp; /* Preemphasis */
word u[8]; /* short_term_aly_filter.c */
word LARpp[2][8]; /* */
word j; /* */
word nrp; /* 40 */ /* long_term.c, synthesis */
word v[9]; /* short_term.c, synthesis */
word msr; /* decoder.c, Postprocessing */
char verbose; /* only used if !NDEBUG */
char fast; /* only used if FAST */
};
#define MIN_WORD ((-32767) - 1)
#define MAX_WORD (32767)
#define MIN_LONGWORD ((-2147483647) - 1)
#define MAX_LONGWORD (2147483647)
#define SASR(x, by) ((x) >> (by))
/* Table 4.3a Decision level of the LTP gain quantizer
*/
/* bc 0 1 2 3 */
word gsm_enc_DLB[4] = {6554, 16384, 26214, 32767};
/* Table 4.5 Normalized inverse mantissa used to compute xM/xmax
*/
/* i 0 1 2 3 4 5 6 7 */
word gsm_enc_NRFAC[8] = {29128, 26215, 23832, 21846,
20165, 18725, 17476, 16384};
/* Table 4.6 Normalized direct mantissa used to compute xM/xmax
*/
/* i 0 1 2 3 4 5 6 7 */
word gsm_enc_FAC[8] = {18431, 20479, 22527, 24575, 26623, 28671, 30719, 32767};
#endif /* PRIVATE_H */

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,56 @@
#ifndef PRIVATE_H
#define PRIVATE_H
typedef short word; /* 16 bit signed int */
typedef long longword; /* 32 bit signed int */
typedef unsigned short uword; /* unsigned word */
typedef unsigned long ulongword; /* unsigned longword */
struct gsm_state {
word dp0[ 280 ];
word z1; /* preprocessing.c, Offset_com. */
longword L_z2; /* Offset_com. */
int mp; /* Preemphasis */
word u[ 8 ]; /* short_term_aly_filter.c */
word LARpp[ 2 ][ 8 ]; /* */
word j; /* */
word nrp; /* 40 */ /* long_term.c, synthesis */
word v[ 9 ]; /* short_term.c, synthesis */
word msr; /* decoder.c, Postprocessing */
char verbose; /* only used if !NDEBUG */
char fast; /* only used if FAST */
};
#define MIN_WORD ((-32767)-1)
#define MAX_WORD ( 32767)
#define MIN_LONGWORD ((-2147483647)-1)
#define MAX_LONGWORD ( 2147483647)
#define SASR(x, by) ((x) >> (by))
/* Table 4.3a Decision level of the LTP gain quantizer
*/
/* bc 0 1 2 3 */
word gsm_enc_DLB[ 4 ] = { 6554, 16384, 26214, 32767 };
/* Table 4.5 Normalized inverse mantissa used to compute xM/xmax
*/
/* i 0 1 2 3 4 5 6 7 */
word gsm_enc_NRFAC[ 8 ] = { 29128, 26215, 23832, 21846, 20165, 18725, 17476, 16384 };
/* Table 4.6 Normalized direct mantissa used to compute xM/xmax
*/
/* i 0 1 2 3 4 5 6 7 */
word gsm_enc_FAC[ 8 ] = { 18431, 20479, 22527, 24575, 26623, 28671, 30719, 32767 };
#endif /* PRIVATE_H */