Перейти к содержанию
    

Добрый вечер!

Есть задача в реализации atan2 в ПЛИС

Ранние темы на форуме видел (пробовал варианты кода, которые были прикреплены)
Также пробовал варианты с OpenCores

Они работают, но неизвестно правильно или нет (некоторым вариантам реализации уже больше 5 лет, а с автором нет возможности связаться, так как он не заходил больше 2 лет)

В связи с этим вопрос
Есть ли какие-то реализации atan2 на Verilog на примете, которые можете кинуть и с автором которого можно проконсулироваться по работе корки?

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Приветствую!

1 hour ago, Zalman_ said:

...
Они работают, но неизвестно правильно или нет (некоторым вариантам реализации уже больше 5 лет, а с автором нет возможности связаться, так как он не заходил больше 2 лет)

В связи с этим вопрос
Есть ли какие-то реализации atan2 на Verilog на примете, которые можете кинуть и с автором которого можно проконсулироваться по работе корки?
 

Думаю вам проще  будет  сделать тестбенч для проверки подобных корок. И поганять этот тест на симе с рандомными данными сравнивая  результат корки с  эталонными atan(). 
В любом случае  вам это придется делать. Тогда и понимание будет (работает или нет) и авторов искать не придется. :wink2:

Удачи! Rob

P.S. "Ищу продавца кошек в мешке, для консультаций о породе пушистика"    :biggrin:

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

7 минут назад, RobFPGA сказал:

Приветствую!

Думаю вам проще  будет  сделать тестбенч для проверки подобных корок. И поганять этот тест на симе с рандомными данными сравнивая  результат корки с  эталонными atan(). 
В любом случае  вам это придется делать. Тогда и понимание будет (работает или нет) и авторов искать не придется. :wink2:

Удачи! Rob

P.S. "Ищу продавца кошек в мешке, для консультаций о породе пушистика"    :biggrin:

Спасибо за рекомендацию, попробую еще какие-нибудь варианты теста корки
Сегодня весь день этим занимался
Результат был следующим

В тестбенче корки уже генерируются рандомные значения, что упрощает работу с ним и вот расскажу как это было

Примем, что на вход подаются два значение x = 0.11, а у = -0.38, тогда atan2 = -1.29 (все в радианах)

В случае Verilog и SystemVerilog есть функция $atan2, которая позволяет посчитать значения и она выдает такой же результат, то есть -1.29
Ядро же выдает значения фазы, которые довольно сильно (на мой взгляд отстают от эталонного), вместо -1.29 выдает результат в районе -1.77 и т.д., то есть значения пляшут +- 0.5
Не знаю, возможно это нормально, но мне кажется, это большой погрешностью, но может быть ошибаюсь

Буду дальше копаться с ним, однако, все равно вопрос остался открытым

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

что там копаться то, там все элементарно, математика пятого класса. четвертая ссылка с гугла https://kit-e.ru/fpga/realizacziya-cordic-algoritma-na-plis/

написать свой, с нуля, даже если знаний ноль, ну максимум 1 день.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

5 часов назад, des00 сказал:

что там копаться то, там все элементарно, математика пятого класса. четвертая ссылка с гугла https://kit-e.ru/fpga/realizacziya-cordic-algoritma-na-plis/

написать свой, с нуля, даже если знаний ноль, ну максимум 1 день.

Видел эту статью
Насколько понял из статьи она генерирует синус и косинус, то есть это классический CORDIC в качестве DDS синтезатора, а вот функцию atan2 не вычисляет

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

У меня есть в заначке  простенкая...   16р вход  и 16р выход.  Интересно?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

1 минуту назад, Мур сказал:

У меня есть в заначке  простенкая...   16р вход  и 16р выход.  Интересно?

Да, очень)
 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Даю с бенчем...    Критикуйте!!!   Вроде шустренко....  Извините, тут в VHDL  (((

ATAN2.ZIP

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Можете попробовать сгенерировать сами в Verilog из Матлаба...   По аналогии... Придется только напрячься с оптимизацией!

Atan2_FPGA.mdl

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

1 hour ago, Zalman_ said:

Видел эту статью
Насколько понял из статьи она генерирует синус и косинус, то есть это классический CORDIC в качестве DDS синтезатора, а вот функцию atan2 не вычисляет

ну и чем это вам мешает? atan2 это положить вектор на ось декартовых координат X. Накопленный угол за шаги поворота - ваше искомое. Для этого надо просто изменить входные аргументы алгоритма.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

2 минуты назад, des00 сказал:

ну и чем это вам мешает? atan2 это положить вектор на ось декартовых координат X. Накопленный угол за шаги поворота - ваше искомое. Для этого надо просто изменить входные аргументы алгоритма.

Спасибо, обдумаю этот момент

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

не совсем верилог, но тут не принципиально, если памяти особо не жалко и не требуется очень уж большая точность, то урезать разрядность и запихать всё в таблицу вполне себе вариант:

при округлении аргументов до 6 бит, ошибка по углу вроде уже лучше 8бит получается.

 

#include <stdint.h>
/*
static const uint8_t atan_table[32][32] = {
  {0x20, 0x1f, 0x1d, 0x1c, 0x1a, 0x18, 0x16, 0x14, 0x12, 0x10, 0x0e, 0x0c, 0x09, 0x07, 0x04, 0x01, 0xff, 0xfc, 0xf9, 0xf7, 0xf4, 0xf2, 0xf0, 0xee, 0xec, 0xea, 0xe8, 0xe6, 0xe4, 0xe3, 0xe1, 0xe0},
  {0x21, 0x20, 0x1f, 0x1d, 0x1b, 0x1a, 0x18, 0x16, 0x13, 0x11, 0x0f, 0x0c, 0x0a, 0x07, 0x04, 0x01, 0xff, 0xfc, 0xf9, 0xf6, 0xf4, 0xf1, 0xef, 0xed, 0xea, 0xe8, 0xe6, 0xe5, 0xe3, 0xe1, 0xe0, 0xdf},
  {0x23, 0x21, 0x20, 0x1e, 0x1d, 0x1b, 0x19, 0x17, 0x15, 0x12, 0x10, 0x0d, 0x0a, 0x07, 0x05, 0x02, 0xfe, 0xfb, 0xf9, 0xf6, 0xf3, 0xf0, 0xee, 0xeb, 0xe9, 0xe7, 0xe5, 0xe3, 0xe2, 0xe0, 0xdf, 0xdd},
  {0x24, 0x23, 0x22, 0x20, 0x1e, 0x1c, 0x1a, 0x18, 0x16, 0x14, 0x11, 0x0e, 0x0b, 0x08, 0x05, 0x02, 0xfe, 0xfb, 0xf8, 0xf5, 0xf2, 0xef, 0xec, 0xea, 0xe8, 0xe6, 0xe4, 0xe2, 0xe0, 0xde, 0xdd, 0xdc},
  {0x26, 0x25, 0x23, 0x22, 0x20, 0x1e, 0x1c, 0x1a, 0x18, 0x15, 0x12, 0x0f, 0x0c, 0x09, 0x05, 0x02, 0xfe, 0xfb, 0xf7, 0xf4, 0xf1, 0xee, 0xeb, 0xe8, 0xe6, 0xe4, 0xe2, 0xe0, 0xde, 0xdd, 0xdb, 0xda},
  {0x28, 0x26, 0x25, 0x24, 0x22, 0x20, 0x1e, 0x1c, 0x19, 0x17, 0x14, 0x10, 0x0d, 0x0a, 0x06, 0x02, 0xfe, 0xfa, 0xf6, 0xf3, 0xf0, 0xec, 0xe9, 0xe7, 0xe4, 0xe2, 0xe0, 0xde, 0xdc, 0xdb, 0xda, 0xd8},
  {0x2a, 0x28, 0x27, 0x26, 0x24, 0x22, 0x20, 0x1e, 0x1b, 0x18, 0x15, 0x12, 0x0e, 0x0a, 0x06, 0x02, 0xfe, 0xfa, 0xf6, 0xf2, 0xee, 0xeb, 0xe8, 0xe5, 0xe2, 0xe0, 0xde, 0xdc, 0xda, 0xd9, 0xd8, 0xd6},
  {0x2c, 0x2a, 0x29, 0x28, 0x26, 0x24, 0x22, 0x20, 0x1d, 0x1b, 0x17, 0x14, 0x10, 0x0c, 0x07, 0x02, 0xfe, 0xf9, 0xf4, 0xf0, 0xec, 0xe9, 0xe5, 0xe3, 0xe0, 0xde, 0xdc, 0xda, 0xd8, 0xd7, 0xd6, 0xd4},
  {0x2e, 0x2d, 0x2b, 0x2a, 0x28, 0x27, 0x25, 0x23, 0x20, 0x1d, 0x1a, 0x16, 0x12, 0x0d, 0x08, 0x03, 0xfd, 0xf8, 0xf3, 0xee, 0xea, 0xe6, 0xe3, 0xe0, 0xdd, 0xdb, 0xd9, 0xd8, 0xd6, 0xd5, 0xd3, 0xd2},
  {0x30, 0x2f, 0x2e, 0x2c, 0x2b, 0x29, 0x28, 0x25, 0x23, 0x20, 0x1d, 0x19, 0x14, 0x0f, 0x09, 0x03, 0xfd, 0xf7, 0xf1, 0xec, 0xe7, 0xe3, 0xe0, 0xdd, 0xdb, 0xd8, 0xd7, 0xd5, 0xd4, 0xd2, 0xd1, 0xd0},
  {0x32, 0x31, 0x30, 0x2f, 0x2e, 0x2c, 0x2b, 0x29, 0x26, 0x23, 0x20, 0x1c, 0x17, 0x11, 0x0b, 0x04, 0xfc, 0xf5, 0xef, 0xe9, 0xe4, 0xe0, 0xdd, 0xda, 0xd7, 0xd5, 0xd4, 0xd2, 0xd1, 0xd0, 0xcf, 0xce},
  {0x34, 0x34, 0x33, 0x32, 0x31, 0x30, 0x2e, 0x2c, 0x2a, 0x27, 0x24, 0x20, 0x1b, 0x15, 0x0d, 0x05, 0xfb, 0xf3, 0xeb, 0xe5, 0xe0, 0xdc, 0xd9, 0xd6, 0xd4, 0xd2, 0xd0, 0xcf, 0xce, 0xcd, 0xcc, 0xcc},
  {0x37, 0x36, 0x36, 0x35, 0x34, 0x33, 0x32, 0x30, 0x2e, 0x2c, 0x29, 0x25, 0x20, 0x19, 0x10, 0x06, 0xfa, 0xf0, 0xe7, 0xe0, 0xdb, 0xd7, 0xd4, 0xd2, 0xd0, 0xce, 0xcd, 0xcc, 0xcb, 0xca, 0xca, 0xc9},
  {0x39, 0x39, 0x39, 0x38, 0x37, 0x36, 0x36, 0x34, 0x33, 0x31, 0x2f, 0x2b, 0x27, 0x20, 0x16, 0x08, 0xf8, 0xea, 0xe0, 0xd9, 0xd5, 0xd1, 0xcf, 0xcd, 0xcc, 0xca, 0xca, 0xc9, 0xc8, 0xc7, 0xc7, 0xc7},
  {0x3c, 0x3c, 0x3b, 0x3b, 0x3b, 0x3a, 0x3a, 0x39, 0x38, 0x37, 0x35, 0x33, 0x30, 0x2a, 0x20, 0x0d, 0xf3, 0xe0, 0xd6, 0xd0, 0xcd, 0xcb, 0xc9, 0xc8, 0xc7, 0xc6, 0xc6, 0xc5, 0xc5, 0xc5, 0xc4, 0xc4},
  {0x3f, 0x3f, 0x3e, 0x3e, 0x3e, 0x3e, 0x3e, 0x3e, 0x3d, 0x3d, 0x3c, 0x3b, 0x3a, 0x38, 0x33, 0x20, 0xe0, 0xcd, 0xc8, 0xc6, 0xc5, 0xc4, 0xc3, 0xc3, 0xc2, 0xc2, 0xc2, 0xc2, 0xc2, 0xc2, 0xc1, 0xc1},
  {0x41, 0x41, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x43, 0x43, 0x44, 0x45, 0x46, 0x48, 0x4d, 0x60, 0xa0, 0xb3, 0xb8, 0xba, 0xbb, 0xbc, 0xbd, 0xbd, 0xbe, 0xbe, 0xbe, 0xbe, 0xbe, 0xbe, 0xbf, 0xbf},
  {0x44, 0x44, 0x45, 0x45, 0x45, 0x46, 0x46, 0x47, 0x48, 0x49, 0x4b, 0x4d, 0x50, 0x56, 0x60, 0x73, 0x8d, 0xa0, 0xaa, 0xb0, 0xb3, 0xb5, 0xb7, 0xb8, 0xb9, 0xba, 0xba, 0xbb, 0xbb, 0xbb, 0xbc, 0xbc},
  {0x47, 0x47, 0x47, 0x48, 0x49, 0x4a, 0x4a, 0x4c, 0x4d, 0x4f, 0x51, 0x55, 0x59, 0x60, 0x6a, 0x78, 0x88, 0x96, 0xa0, 0xa7, 0xab, 0xaf, 0xb1, 0xb3, 0xb4, 0xb6, 0xb6, 0xb7, 0xb8, 0xb9, 0xb9, 0xb9},
  {0x49, 0x4a, 0x4a, 0x4b, 0x4c, 0x4d, 0x4e, 0x50, 0x52, 0x54, 0x57, 0x5b, 0x60, 0x67, 0x70, 0x7a, 0x86, 0x90, 0x99, 0xa0, 0xa5, 0xa9, 0xac, 0xae, 0xb0, 0xb2, 0xb3, 0xb4, 0xb5, 0xb6, 0xb6, 0xb7},
  {0x4c, 0x4c, 0x4d, 0x4e, 0x4f, 0x50, 0x52, 0x54, 0x56, 0x59, 0x5c, 0x60, 0x65, 0x6b, 0x73, 0x7b, 0x85, 0x8d, 0x95, 0x9b, 0xa0, 0xa4, 0xa7, 0xaa, 0xac, 0xae, 0xb0, 0xb1, 0xb2, 0xb3, 0xb4, 0xb4},
  {0x4e, 0x4f, 0x50, 0x51, 0x52, 0x54, 0x55, 0x57, 0x5a, 0x5d, 0x60, 0x64, 0x69, 0x6f, 0x75, 0x7c, 0x84, 0x8b, 0x91, 0x97, 0x9c, 0xa0, 0xa3, 0xa6, 0xa9, 0xab, 0xac, 0xae, 0xaf, 0xb0, 0xb1, 0xb2},
  {0x50, 0x51, 0x52, 0x54, 0x55, 0x57, 0x58, 0x5b, 0x5d, 0x60, 0x63, 0x67, 0x6c, 0x71, 0x77, 0x7d, 0x83, 0x89, 0x8f, 0x94, 0x99, 0x9d, 0xa0, 0xa3, 0xa5, 0xa8, 0xa9, 0xab, 0xac, 0xae, 0xaf, 0xb0},
  {0x52, 0x53, 0x55, 0x56, 0x58, 0x59, 0x5b, 0x5d, 0x60, 0x63, 0x66, 0x6a, 0x6e, 0x73, 0x78, 0x7d, 0x83, 0x88, 0x8d, 0x92, 0x96, 0x9a, 0x9d, 0xa0, 0xa3, 0xa5, 0xa7, 0xa8, 0xaa, 0xab, 0xad, 0xae},
  {0x54, 0x56, 0x57, 0x58, 0x5a, 0x5c, 0x5e, 0x60, 0x63, 0x65, 0x69, 0x6c, 0x70, 0x74, 0x79, 0x7e, 0x82, 0x87, 0x8c, 0x90, 0x94, 0x97, 0x9b, 0x9d, 0xa0, 0xa2, 0xa4, 0xa6, 0xa8, 0xa9, 0xaa, 0xac},
  {0x56, 0x58, 0x59, 0x5a, 0x5c, 0x5e, 0x60, 0x62, 0x65, 0x68, 0x6b, 0x6e, 0x72, 0x76, 0x7a, 0x7e, 0x82, 0x86, 0x8a, 0x8e, 0x92, 0x95, 0x98, 0x9b, 0x9e, 0xa0, 0xa2, 0xa4, 0xa6, 0xa7, 0xa8, 0xaa},
  {0x58, 0x5a, 0x5b, 0x5c, 0x5e, 0x60, 0x62, 0x64, 0x67, 0x69, 0x6c, 0x70, 0x73, 0x76, 0x7a, 0x7e, 0x82, 0x86, 0x8a, 0x8d, 0x90, 0x94, 0x97, 0x99, 0x9c, 0x9e, 0xa0, 0xa2, 0xa4, 0xa5, 0xa6, 0xa8},
  {0x5a, 0x5b, 0x5d, 0x5e, 0x60, 0x62, 0x64, 0x66, 0x68, 0x6b, 0x6e, 0x71, 0x74, 0x77, 0x7b, 0x7e, 0x82, 0x85, 0x89, 0x8c, 0x8f, 0x92, 0x95, 0x98, 0x9a, 0x9c, 0x9e, 0xa0, 0xa2, 0xa3, 0xa5, 0xa6},
  {0x5c, 0x5d, 0x5e, 0x60, 0x62, 0x64, 0x66, 0x68, 0x6a, 0x6c, 0x6f, 0x72, 0x75, 0x78, 0x7b, 0x7e, 0x82, 0x85, 0x88, 0x8b, 0x8e, 0x91, 0x94, 0x96, 0x98, 0x9a, 0x9c, 0x9e, 0xa0, 0xa2, 0xa3, 0xa4},
  {0x5d, 0x5f, 0x60, 0x62, 0x63, 0x65, 0x67, 0x69, 0x6b, 0x6e, 0x70, 0x73, 0x76, 0x79, 0x7b, 0x7e, 0x82, 0x85, 0x87, 0x8a, 0x8d, 0x90, 0x92, 0x95, 0x97, 0x99, 0x9b, 0x9d, 0x9e, 0xa0, 0xa1, 0xa3},
  {0x5f, 0x60, 0x61, 0x63, 0x65, 0x66, 0x68, 0x6a, 0x6d, 0x6f, 0x71, 0x74, 0x76, 0x79, 0x7c, 0x7f, 0x81, 0x84, 0x87, 0x8a, 0x8c, 0x8f, 0x91, 0x93, 0x96, 0x98, 0x9a, 0x9b, 0x9d, 0x9f, 0xa0, 0xa1},
  {0x60, 0x61, 0x63, 0x64, 0x66, 0x68, 0x6a, 0x6c, 0x6e, 0x70, 0x72, 0x74, 0x77, 0x79, 0x7c, 0x7f, 0x81, 0x84, 0x87, 0x89, 0x8c, 0x8e, 0x90, 0x92, 0x94, 0x96, 0x98, 0x9a, 0x9c, 0x9d, 0x9f, 0xa0}
};
*/
/*
static const uint16_t atan_table[64][64] = {
  {0x2000, 0x20ab, 0x215b, 0x2212, 0x22ce, 0x2390, 0x2459, 0x2528, 0x25fe, 0x26da, 0x27bd, 0x28a8, 0x2999, 0x2a91, 0x2b90, 0x2c96, 0x2da3, 0x2eb7, 0x2fd2, 0x30f4, 0x321b, 0x3349, 0x347d, 0x35b6, 0x36f3, 0x3836, 0x397c, 0x3ac5, 0x3c12, 0x3d60, 0x3eaf, 0x4000, 0x4150, 0x42a0, 0x43ee, 0x453a, 0x4684, 0x47ca, 0x490c, 0x4a4a, 0x4b83, 0x4cb6, 0x4de4, 0x4f0c, 0x502d, 0x5148, 0x525c, 0x5369, 0x5470, 0x556f, 0x5667, 0x5758, 0x5842, 0x5925, 0x5a02, 0x5ad7, 0x5ba6, 0x5c6f, 0x5d31, 0x5dee, 0x5ea4, 0x5f55, 0x6000, 0x60a5},
  {0x1f55, 0x2000, 0x20b1, 0x2167, 0x2224, 0x22e8, 0x23b1, 0x2482, 0x255a, 0x2638, 0x271e, 0x280b, 0x28ff, 0x29fb, 0x2afe, 0x2c09, 0x2d1c, 0x2e36, 0x2f57, 0x307f, 0x31ae, 0x32e4, 0x3420, 0x3562, 0x36a9, 0x37f5, 0x3945, 0x3a99, 0x3bf0, 0x3d49, 0x3ea4, 0x4000, 0x415b, 0x42b6, 0x440f, 0x4566, 0x46ba, 0x480b, 0x4957, 0x4a9e, 0x4be0, 0x4d1c, 0x4e51, 0x4f81, 0x50a9, 0x51ca, 0x52e4, 0x53f6, 0x5501, 0x5604, 0x5700, 0x57f5, 0x58e2, 0x59c7, 0x5aa6, 0x5b7d, 0x5c4e, 0x5d18, 0x5ddb, 0x5e98, 0x5f4f, 0x6000, 0x60ab, 0x6150},
  {0x1ea4, 0x1f4f, 0x2000, 0x20b7, 0x2174, 0x2238, 0x2303, 0x23d5, 0x24ae, 0x258f, 0x2677, 0x2767, 0x285e, 0x295e, 0x2a65, 0x2b75, 0x2c8d, 0x2dad, 0x2ed4, 0x3004, 0x313a, 0x3278, 0x33bd, 0x3508, 0x3659, 0x37b0, 0x390b, 0x3a6a, 0x3bcd, 0x3d32, 0x3e98, 0x4000, 0x4167, 0x42ce, 0x4433, 0x4595, 0x46f5, 0x4850, 0x49a6, 0x4af7, 0x4c42, 0x4d87, 0x4ec5, 0x4ffc, 0x512b, 0x5253, 0x5373, 0x548a, 0x559a, 0x56a2, 0x57a1, 0x5899, 0x5989, 0x5a71, 0x5b51, 0x5c2b, 0x5cfc, 0x5dc7, 0x5e8b, 0x5f49, 0x6000, 0x60b0, 0x615b, 0x6200},
  {0x1dee, 0x1e98, 0x1f49, 0x2000, 0x20bd, 0x2182, 0x224e, 0x2321, 0x23fb, 0x24de, 0x25c8, 0x26ba, 0x27b5, 0x28b9, 0x29c4, 0x2ad9, 0x2bf6, 0x2d1c, 0x2e4a, 0x2f81, 0x30bf, 0x3206, 0x3354, 0x34a9, 0x3605, 0x3766, 0x38cd, 0x3a38, 0x3ba6, 0x3d18, 0x3e8b, 0x4000, 0x4174, 0x42e8, 0x4459, 0x45c8, 0x4733, 0x4899, 0x49fb, 0x4b56, 0x4cac, 0x4dfa, 0x4f40, 0x507f, 0x51b5, 0x52e4, 0x5409, 0x5527, 0x563b, 0x5747, 0x584a, 0x5945, 0x5a38, 0x5b22, 0x5c04, 0x5cdf, 0x5db2, 0x5e7d, 0x5f42, 0x6000, 0x60b7, 0x6167, 0x6212, 0x62b6},
  {0x1d32, 0x1ddb, 0x1e8c, 0x1f42, 0x2000, 0x20c5, 0x2191, 0x2265, 0x2341, 0x2425, 0x2511, 0x2606, 0x2704, 0x280b, 0x291b, 0x2a34, 0x2b57, 0x2c82, 0x2db7, 0x2ef6, 0x303d, 0x318c, 0x32e4, 0x3443, 0x35aa, 0x3717, 0x388a, 0x3a02, 0x3b7e, 0x3cfd, 0x3e7e, 0x4000, 0x4182, 0x4303, 0x4482, 0x45fe, 0x4776, 0x48e9, 0x4a56, 0x4bbc, 0x4d1c, 0x4e73, 0x4fc3, 0x510a, 0x5248, 0x537d, 0x54a9, 0x55cb, 0x56e5, 0x57f5, 0x58fc, 0x59fa, 0x5aef, 0x5bdb, 0x5cbf, 0x5d9b, 0x5e6f, 0x5f3b, 0x6000, 0x60bd, 0x6174, 0x6224, 0x62ce, 0x6371},
  {0x1c6f, 0x1d18, 0x1dc8, 0x1e7e, 0x1f3b, 0x2000, 0x20cc, 0x21a1, 0x227e, 0x2363, 0x2451, 0x2549, 0x2649, 0x2754, 0x2868, 0x2986, 0x2aae, 0x2be0, 0x2d1c, 0x2e62, 0x2fb1, 0x310a, 0x326c, 0x33d6, 0x3549, 0x36c2, 0x3842, 0x39c8, 0x3b52, 0x3cdf, 0x3e6f, 0x4000, 0x4191, 0x4320, 0x44ae, 0x4638, 0x47bd, 0x493d, 0x4ab7, 0x4c29, 0x4d94, 0x4ef5, 0x504e, 0x519e, 0x52e4, 0x5420, 0x5552, 0x567a, 0x5798, 0x58ac, 0x59b6, 0x5ab7, 0x5bae, 0x5c9c, 0x5d82, 0x5e5f, 0x5f33, 0x6000, 0x60c4, 0x6182, 0x6238, 0x62e7, 0x6390, 0x6433},
  {0x1ba7, 0x1c4e, 0x1cfd, 0x1db2, 0x1e6f, 0x1f33, 0x2000, 0x20d5, 0x21b2, 0x2299, 0x2389, 0x2482, 0x2585, 0x2693, 0x27ab, 0x28ce, 0x29fb, 0x2b33, 0x2c76, 0x2dc4, 0x2f1c, 0x307f, 0x31ec, 0x3361, 0x34e0, 0x3667, 0x37f5, 0x3989, 0x3b22, 0x3cbf, 0x3e5f, 0x4000, 0x41a1, 0x4340, 0x44dd, 0x4677, 0x480b, 0x4999, 0x4b1f, 0x4c9e, 0x4e14, 0x4f81, 0x50e3, 0x523b, 0x5389, 0x54cc, 0x5604, 0x5732, 0x5854, 0x596c, 0x5a7a, 0x5b7d, 0x5c77, 0x5d67, 0x5e4d, 0x5f2b, 0x6000, 0x60cc, 0x6191, 0x624d, 0x6303, 0x63b1, 0x6459, 0x64fa},
  {0x1ad7, 0x1b7e, 0x1c2b, 0x1cdf, 0x1d9b, 0x1e5f, 0x1f2b, 0x2000, 0x20de, 0x21c5, 0x22b6, 0x23b1, 0x24b7, 0x25c8, 0x26e4, 0x280b, 0x293d, 0x2a7c, 0x2bc6, 0x2d1c, 0x2e7d, 0x2fea, 0x3162, 0x32e4, 0x3470, 0x3605, 0x37a1, 0x3945, 0x3aef, 0x3c9d, 0x3e4d, 0x4000, 0x41b2, 0x4363, 0x4511, 0x46ba, 0x485e, 0x49fb, 0x4b90, 0x4d1c, 0x4e9e, 0x5016, 0x5182, 0x52e4, 0x543a, 0x5584, 0x56c2, 0x57f5, 0x591c, 0x5a38, 0x5b48, 0x5c4e, 0x5d49, 0x5e3a, 0x5f22, 0x6000, 0x60d4, 0x61a1, 0x6264, 0x6320, 0x63d5, 0x6482, 0x6528, 0x65c8},
  {0x1a02, 0x1aa6, 0x1b52, 0x1c05, 0x1cbf, 0x1d82, 0x1e4e, 0x1f22, 0x2000, 0x20e8, 0x21da, 0x22d6, 0x23de, 0x24f2, 0x2611, 0x273c, 0x2874, 0x29b9, 0x2b0a, 0x2c68, 0x2dd3, 0x2f4a, 0x30cd, 0x325c, 0x33f6, 0x359a, 0x3747, 0x38fc, 0x3ab7, 0x3c77, 0x3e3b, 0x4000, 0x41c5, 0x4388, 0x4549, 0x4704, 0x48b8, 0x4a65, 0x4c09, 0x4da3, 0x4f32, 0x50b5, 0x522d, 0x5398, 0x54f6, 0x5647, 0x578b, 0x58c3, 0x59ef, 0x5b0e, 0x5c21, 0x5d29, 0x5e26, 0x5f18, 0x6000, 0x60de, 0x61b2, 0x627d, 0x6340, 0x63fb, 0x64ae, 0x6559, 0x65fe, 0x669b},
  {0x1925, 0x19c8, 0x1a71, 0x1b22, 0x1bdb, 0x1c9d, 0x1d67, 0x1e3b, 0x1f18, 0x2000, 0x20f2, 0x21f0, 0x22fa, 0x240f, 0x2532, 0x2661, 0x279e, 0x28e9, 0x2a41, 0x2ba7, 0x2d1c, 0x2e9e, 0x302e, 0x31ca, 0x3373, 0x3527, 0x36e5, 0x38ac, 0x3a7a, 0x3c4e, 0x3e26, 0x4000, 0x41da, 0x43b1, 0x4585, 0x4754, 0x491b, 0x4ad9, 0x4c8d, 0x4e36, 0x4fd2, 0x5162, 0x52e4, 0x5458, 0x55be, 0x5717, 0x5861, 0x599e, 0x5ace, 0x5bf0, 0x5d06, 0x5e0f, 0x5f0d, 0x6000, 0x60e7, 0x61c5, 0x6298, 0x6363, 0x6424, 0x64dd, 0x658e, 0x6638, 0x66da, 0x6776},
  {0x1842, 0x18e2, 0x1989, 0x1a38, 0x1aef, 0x1bae, 0x1c77, 0x1d4a, 0x1e26, 0x1f0d, 0x2000, 0x20fe, 0x2209, 0x2321, 0x2446, 0x2579, 0x26ba, 0x280b, 0x296a, 0x2ad9, 0x2c57, 0x2de4, 0x2f81, 0x312b, 0x32e4, 0x34a9, 0x367a, 0x3855, 0x3a38, 0x3c21, 0x3e0f, 0x4000, 0x41f0, 0x43de, 0x45c8, 0x47ab, 0x4986, 0x4b56, 0x4d1c, 0x4ed4, 0x507f, 0x521b, 0x53a8, 0x5527, 0x5695, 0x57f5, 0x5945, 0x5a87, 0x5bba, 0x5cdf, 0x5df7, 0x5f01, 0x6000, 0x60f2, 0x61d9, 0x62b6, 0x6388, 0x6451, 0x6511, 0x65c8, 0x6676, 0x671d, 0x67bd, 0x6856},
  {0x1758, 0x17f5, 0x1899, 0x1945, 0x19fa, 0x1ab7, 0x1b7e, 0x1c4e, 0x1d29, 0x1e10, 0x1f02, 0x2000, 0x210b, 0x2224, 0x234c, 0x2482, 0x25c8, 0x271e, 0x2884, 0x29fb, 0x2b83, 0x2d1c, 0x2ec5, 0x307f, 0x3248, 0x3420, 0x3605, 0x37f5, 0x39ef, 0x3bf0, 0x3df7, 0x4000, 0x4209, 0x440f, 0x4611, 0x480b, 0x49fb, 0x4be0, 0x4db7, 0x4f81, 0x513a, 0x52e4, 0x547d, 0x5604, 0x577b, 0x58e2, 0x5a38, 0x5b7d, 0x5cb4, 0x5ddb, 0x5ef4, 0x6000, 0x60fe, 0x61f0, 0x62d6, 0x63b1, 0x6482, 0x6548, 0x6606, 0x66ba, 0x6766, 0x680b, 0x68a7, 0x693d},
  {0x1667, 0x1701, 0x17a2, 0x184a, 0x18fc, 0x19b6, 0x1a7a, 0x1b48, 0x1c22, 0x1d06, 0x1df7, 0x1ef4, 0x2000, 0x211a, 0x2243, 0x237c, 0x24c5, 0x2620, 0x278d, 0x290c, 0x2a9e, 0x2c43, 0x2dfa, 0x2fc3, 0x319e, 0x3389, 0x3584, 0x378c, 0x399e, 0x3bba, 0x3ddb, 0x4000, 0x4224, 0x4446, 0x4661, 0x4874, 0x4a7c, 0x4c76, 0x4e62, 0x503c, 0x5206, 0x53bd, 0x5561, 0x56f3, 0x5872, 0x59df, 0x5b3a, 0x5c84, 0x5dbd, 0x5ee6, 0x6000, 0x610b, 0x6209, 0x62f9, 0x63de, 0x64b7, 0x6585, 0x6649, 0x6704, 0x67b5, 0x685e, 0x68ff, 0x6998, 0x6a2b},
  {0x156f, 0x1605, 0x16a2, 0x1747, 0x17f5, 0x18ac, 0x196d, 0x1a38, 0x1b0e, 0x1bf0, 0x1cdf, 0x1ddb, 0x1ee6, 0x2000, 0x212a, 0x2265, 0x23b1, 0x2511, 0x2684, 0x280b, 0x29a6, 0x2b57, 0x2d1c, 0x2ef6, 0x30e3, 0x32e4, 0x34f6, 0x3717, 0x3945, 0x3b7e, 0x3dbd, 0x4000, 0x4243, 0x4482, 0x46ba, 0x48e9, 0x4b0a, 0x4d1c, 0x4f1c, 0x510a, 0x52e4, 0x54a9, 0x5659, 0x57f5, 0x597c, 0x5aef, 0x5c4e, 0x5d9b, 0x5ed6, 0x6000, 0x6119, 0x6224, 0x6320, 0x640f, 0x64f1, 0x65c8, 0x6693, 0x6754, 0x680b, 0x68b8, 0x695e, 0x69fb, 0x6a91, 0x6b1f},
  {0x1470, 0x1501, 0x159a, 0x163b, 0x16e5, 0x1798, 0x1855, 0x191c, 0x19ef, 0x1ace, 0x1bba, 0x1cb4, 0x1dbd, 0x1ed6, 0x2000, 0x213c, 0x228b, 0x23ee, 0x2566, 0x26f5, 0x289a, 0x2a56, 0x2c29, 0x2e14, 0x3016, 0x322d, 0x3458, 0x3695, 0x38e2, 0x3b3a, 0x3d9b, 0x4000, 0x4265, 0x44c5, 0x471e, 0x496a, 0x4ba7, 0x4dd3, 0x4fea, 0x51eb, 0x53d6, 0x55aa, 0x5766, 0x590b, 0x5a99, 0x5c11, 0x5d75, 0x5ec4, 0x6000, 0x612a, 0x6242, 0x634b, 0x6446, 0x6532, 0x6611, 0x66e3, 0x67ab, 0x6868, 0x691b, 0x69c4, 0x6a65, 0x6afe, 0x6b90, 0x6c1a},
  {0x136a, 0x13f6, 0x148b, 0x1527, 0x15cc, 0x167a, 0x1732, 0x17f5, 0x18c4, 0x199e, 0x1a87, 0x1b7e, 0x1c84, 0x1d9b, 0x1ec4, 0x2000, 0x2150, 0x22b6, 0x2433, 0x25c8, 0x2776, 0x293d, 0x2b1f, 0x2d1c, 0x2f32, 0x3162, 0x33a9, 0x3605, 0x3873, 0x3aef, 0x3d75, 0x4000, 0x428b, 0x4511, 0x478d, 0x49fb, 0x4c57, 0x4e9e, 0x50cd, 0x52e4, 0x54e0, 0x56c2, 0x588a, 0x5a38, 0x5bcc, 0x5d49, 0x5eaf, 0x6000, 0x613c, 0x6264, 0x637b, 0x6482, 0x6579, 0x6661, 0x673c, 0x680b, 0x68cd, 0x6986, 0x6a34, 0x6ad9, 0x6b75, 0x6c09, 0x6c96, 0x6d1c},
  {0x125c, 0x12e4, 0x1373, 0x140a, 0x14a9, 0x1552, 0x1605, 0x16c2, 0x178c, 0x1862, 0x1945, 0x1a38, 0x1b3a, 0x1c4e, 0x1d75, 0x1eb0, 0x2000, 0x2167, 0x22e8, 0x2482, 0x2638, 0x280b, 0x29fb, 0x2c09, 0x2e36, 0x307f, 0x32e4, 0x3562, 0x37f5, 0x3a99, 0x3d49, 0x4000, 0x42b6, 0x4566, 0x480b, 0x4a9e, 0x4d1c, 0x4f81, 0x51ca, 0x53f6, 0x5604, 0x57f5, 0x59c7, 0x5b7d, 0x5d18, 0x5e98, 0x6000, 0x6150, 0x628b, 0x63b1, 0x64c5, 0x65c8, 0x66ba, 0x679e, 0x6874, 0x693d, 0x69fb, 0x6aae, 0x6b56, 0x6bf6, 0x6c8d, 0x6d1c, 0x6da3, 0x6e24},
  {0x1148, 0x11ca, 0x1253, 0x12e4, 0x137d, 0x1420, 0x14cd, 0x1584, 0x1647, 0x1717, 0x17f5, 0x18e2, 0x19df, 0x1aef, 0x1c12, 0x1d4a, 0x1e98, 0x2000, 0x2182, 0x2321, 0x24de, 0x26ba, 0x28b9, 0x2ad9, 0x2d1c, 0x2f81, 0x3206, 0x34a9, 0x3766, 0x3a38, 0x3d18, 0x4000, 0x42e8, 0x45c8, 0x4899, 0x4b56, 0x4dfa, 0x507f, 0x52e4, 0x5527, 0x5747, 0x5945, 0x5b22, 0x5cdf, 0x5e7d, 0x6000, 0x6167, 0x62b6, 0x63ee, 0x6511, 0x6620, 0x671d, 0x680b, 0x68e8, 0x69b8, 0x6a7c, 0x6b33, 0x6be0, 0x6c82, 0x6d1c, 0x6dac, 0x6e35, 0x6eb7, 0x6f32},
  {0x102e, 0x10a9, 0x112b, 0x11b6, 0x1248, 0x12e4, 0x1389, 0x143a, 0x14f6, 0x15bf, 0x1696, 0x177c, 0x1873, 0x197c, 0x1a99, 0x1bcd, 0x1d18, 0x1e7e, 0x2000, 0x21a1, 0x2363, 0x2549, 0x2754, 0x2986, 0x2be0, 0x2e62, 0x310a, 0x33d6, 0x36c2, 0x39c8, 0x3cdf, 0x4000, 0x4320, 0x4638, 0x493d, 0x4c29, 0x4ef5, 0x519e, 0x5420, 0x567a, 0x58ac, 0x5ab7, 0x5c9c, 0x5e5f, 0x6000, 0x6182, 0x62e7, 0x6433, 0x6566, 0x6684, 0x678d, 0x6884, 0x696a, 0x6a41, 0x6b0a, 0x6bc6, 0x6c76, 0x6d1c, 0x6db7, 0x6e4a, 0x6ed4, 0x6f57, 0x6fd2, 0x7047},
  {0x0f0c, 0x0f81, 0x0ffc, 0x107f, 0x110a, 0x119e, 0x123c, 0x12e4, 0x1398, 0x1458, 0x1527, 0x1605, 0x16f4, 0x17f5, 0x190b, 0x1a38, 0x1b7e, 0x1cdf, 0x1e5f, 0x2000, 0x21c5, 0x23b1, 0x25c8, 0x280b, 0x2a7c, 0x2d1c, 0x2fea, 0x32e4, 0x3605, 0x3945, 0x3c9d, 0x4000, 0x4363, 0x46ba, 0x49fb, 0x4d1c, 0x5016, 0x52e4, 0x5584, 0x57f5, 0x5a38, 0x5c4e, 0x5e3a, 0x6000, 0x61a1, 0x6320, 0x6482, 0x65c8, 0x66f4, 0x680b, 0x690c, 0x69fb, 0x6ad9, 0x6ba7, 0x6c68, 0x6d1c, 0x6dc4, 0x6e61, 0x6ef5, 0x6f80, 0x7003, 0x707f, 0x70f3, 0x7161},
  {0x0de4, 0x0e52, 0x0ec5, 0x0f40, 0x0fc3, 0x104f, 0x10e3, 0x1183, 0x122d, 0x12e4, 0x13a9, 0x147d, 0x1562, 0x1659, 0x1766, 0x188a, 0x19c8, 0x1b22, 0x1c9d, 0x1e3b, 0x2000, 0x21f0, 0x240f, 0x2661, 0x28e9, 0x2ba7, 0x2e9e, 0x31ca, 0x3527, 0x38ac, 0x3c4e, 0x4000, 0x43b1, 0x4754, 0x4ad9, 0x4e36, 0x5162, 0x5458, 0x5717, 0x599e, 0x5bf0, 0x5e0f, 0x6000, 0x61c5, 0x6363, 0x64dd, 0x6638, 0x6776, 0x6899, 0x69a6, 0x6a9e, 0x6b83, 0x6c57, 0x6d1c, 0x6dd3, 0x6e7d, 0x6f1c, 0x6fb1, 0x703c, 0x70bf, 0x713a, 0x71ae, 0x721b, 0x7282},
  {0x0cb7, 0x0d1c, 0x0d87, 0x0dfa, 0x0e74, 0x0ef6, 0x0f81, 0x1016, 0x10b6, 0x1162, 0x121b, 0x12e4, 0x13bd, 0x14a9, 0x15aa, 0x16c2, 0x17f5, 0x1945, 0x1ab7, 0x1c4e, 0x1e10, 0x2000, 0x2224, 0x2482, 0x271e, 0x29fb, 0x2d1c, 0x307f, 0x3420, 0x37f5, 0x3bf0, 0x4000, 0x440f, 0x480b, 0x4be0, 0x4f81, 0x52e4, 0x5604, 0x58e2, 0x5b7d, 0x5ddb, 0x6000, 0x61f0, 0x63b1, 0x6548, 0x66ba, 0x680b, 0x693d, 0x6a56, 0x6b56, 0x6c42, 0x6d1c, 0x6de4, 0x6e9e, 0x6f4a, 0x6fea, 0x707f, 0x710a, 0x718c, 0x7206, 0x7278, 0x72e4, 0x7349, 0x73a8},
  {0x0b83, 0x0be0, 0x0c43, 0x0cac, 0x0d1c, 0x0d94, 0x0e14, 0x0e9e, 0x0f32, 0x0fd2, 0x107f, 0x113a, 0x1206, 0x12e4, 0x13d6, 0x14e0, 0x1605, 0x1747, 0x18ac, 0x1a38, 0x1bf0, 0x1ddb, 0x2000, 0x2265, 0x2511, 0x280b, 0x2b57, 0x2ef6, 0x32e4, 0x3717, 0x3b7e, 0x4000, 0x4482, 0x48e9, 0x4d1c, 0x510a, 0x54a9, 0x57f5, 0x5aef, 0x5d9b, 0x6000, 0x6224, 0x640f, 0x65c8, 0x6754, 0x68b8, 0x69fb, 0x6b1f, 0x6c29, 0x6d1c, 0x6df9, 0x6ec5, 0x6f80, 0x702d, 0x70cd, 0x7161, 0x71eb, 0x726c, 0x72e4, 0x7354, 0x73bd, 0x7420, 0x747c, 0x74d4},
  {0x0a4a, 0x0a9e, 0x0af7, 0x0b57, 0x0bbc, 0x0c29, 0x0c9e, 0x0d1c, 0x0da3, 0x0e36, 0x0ed4, 0x0f81, 0x103d, 0x110a, 0x11ec, 0x12e4, 0x13f6, 0x1527, 0x167a, 0x17f5, 0x199e, 0x1b7e, 0x1d9b, 0x2000, 0x22b6, 0x25c8, 0x293d, 0x2d1c, 0x3162, 0x3605, 0x3aef, 0x4000, 0x4511, 0x49fb, 0x4e9e, 0x52e4, 0x56c2, 0x5a38, 0x5d49, 0x6000, 0x6264, 0x6482, 0x6661, 0x680b, 0x6986, 0x6ad9, 0x6c09, 0x6d1c, 0x6e14, 0x6ef5, 0x6fc3, 0x707f, 0x712b, 0x71ca, 0x725c, 0x72e4, 0x7361, 0x73d6, 0x7443, 0x74a9, 0x7508, 0x7561, 0x75b5, 0x7604},
  {0x090c, 0x0957, 0x09a6, 0x09fb, 0x0a56, 0x0ab7, 0x0b20, 0x0b90, 0x0c0a, 0x0c8d, 0x0d1c, 0x0db8, 0x0e62, 0x0f1c, 0x0fea, 0x10ce, 0x11ca, 0x12e4, 0x1420, 0x1584, 0x1717, 0x18e2, 0x1aef, 0x1d4a, 0x2000, 0x2321, 0x26ba, 0x2ad9, 0x2f81, 0x34a9, 0x3a38, 0x4000, 0x45c8, 0x4b56, 0x507f, 0x5527, 0x5945, 0x5cdf, 0x6000, 0x62b6, 0x6511, 0x671d, 0x68e8, 0x6a7c, 0x6be0, 0x6d1c, 0x6e35, 0x6f32, 0x7015, 0x70e3, 0x719e, 0x7248, 0x72e4, 0x7372, 0x73f6, 0x746f, 0x74e0, 0x7548, 0x75aa, 0x7604, 0x7659, 0x76a9, 0x76f3, 0x7739},
  {0x07ca, 0x080b, 0x0850, 0x089a, 0x08e9, 0x093e, 0x0999, 0x09fb, 0x0a66, 0x0ad9, 0x0b57, 0x0be0, 0x0c76, 0x0d1c, 0x0dd3, 0x0e9e, 0x0f81, 0x107f, 0x119e, 0x12e4, 0x1458, 0x1605, 0x17f5, 0x1a38, 0x1cdf, 0x2000, 0x23b1, 0x280b, 0x2d1c, 0x32e4, 0x3945, 0x4000, 0x46ba, 0x4d1c, 0x52e4, 0x57f5, 0x5c4e, 0x6000, 0x6320, 0x65c8, 0x680b, 0x69fb, 0x6ba7, 0x6d1c, 0x6e61, 0x6f80, 0x707f, 0x7161, 0x722d, 0x72e4, 0x7389, 0x7420, 0x74a9, 0x7526, 0x759a, 0x7604, 0x7667, 0x76c2, 0x7717, 0x7766, 0x77b0, 0x77f5, 0x7835, 0x7872},
  {0x0684, 0x06bb, 0x06f5, 0x0733, 0x0776, 0x07be, 0x080b, 0x085e, 0x08b9, 0x091b, 0x0986, 0x09fb, 0x0a7c, 0x0b0a, 0x0ba8, 0x0c57, 0x0d1c, 0x0dfa, 0x0ef6, 0x1016, 0x1162, 0x12e4, 0x14a9, 0x16c2, 0x1945, 0x1c4e, 0x2000, 0x2482, 0x29fb, 0x307f, 0x37f5, 0x4000, 0x480b, 0x4f81, 0x5604, 0x5b7d, 0x6000, 0x63b1, 0x66ba, 0x693d, 0x6b56, 0x6d1c, 0x6e9e, 0x6fea, 0x710a, 0x7206, 0x72e4, 0x73a8, 0x7458, 0x74f5, 0x7584, 0x7604, 0x767a, 0x76e5, 0x7747, 0x77a1, 0x77f5, 0x7842, 0x788a, 0x78cc, 0x790b, 0x7945, 0x797c, 0x79af},
  {0x053a, 0x0567, 0x0596, 0x05c8, 0x05fe, 0x0638, 0x0677, 0x06bb, 0x0704, 0x0754, 0x07ab, 0x080b, 0x0874, 0x08e9, 0x096a, 0x09fb, 0x0a9e, 0x0b57, 0x0c29, 0x0d1c, 0x0e36, 0x0f81, 0x110a, 0x12e4, 0x1527, 0x17f5, 0x1b7e, 0x2000, 0x25c8, 0x2d1c, 0x3605, 0x4000, 0x49fb, 0x52e4, 0x5a38, 0x6000, 0x6482, 0x680b, 0x6ad9, 0x6d1c, 0x6ef5, 0x707f, 0x71ca, 0x72e4, 0x73d6, 0x74a9, 0x7561, 0x7604, 0x7695, 0x7717, 0x778b, 0x77f5, 0x7854, 0x78ac, 0x78fc, 0x7945, 0x7989, 0x79c7, 0x7a01, 0x7a37, 0x7a6a, 0x7a99, 0x7ac5, 0x7aee},
  {0x03ee, 0x0410, 0x0433, 0x0459, 0x0482, 0x04ae, 0x04de, 0x0511, 0x0549, 0x0586, 0x05c8, 0x0611, 0x0661, 0x06bb, 0x071e, 0x078d, 0x080b, 0x089a, 0x093e, 0x09fb, 0x0ad9, 0x0be0, 0x0d1c, 0x0e9e, 0x107f, 0x12e4, 0x1605, 0x1a38, 0x2000, 0x280b, 0x32e4, 0x4000, 0x4d1c, 0x57f5, 0x6000, 0x65c8, 0x69fb, 0x6d1c, 0x6f80, 0x7161, 0x72e4, 0x7420, 0x7526, 0x7604, 0x76c2, 0x7766, 0x77f5, 0x7872, 0x78e2, 0x7945, 0x799e, 0x79ef, 0x7a37, 0x7a7a, 0x7ab7, 0x7aee, 0x7b22, 0x7b51, 0x7b7d, 0x7ba6, 0x7bcc, 0x7bf0, 0x7c11, 0x7c31},
  {0x02a0, 0x02b6, 0x02ce, 0x02e8, 0x0303, 0x0321, 0x0341, 0x0363, 0x0389, 0x03b2, 0x03de, 0x0410, 0x0446, 0x0482, 0x04c5, 0x0511, 0x0567, 0x05c8, 0x0638, 0x06bb, 0x0754, 0x080b, 0x08e9, 0x09fb, 0x0b57, 0x0d1c, 0x0f81, 0x12e4, 0x17f5, 0x2000, 0x2d1c, 0x4000, 0x52e4, 0x6000, 0x680b, 0x6d1c, 0x707f, 0x72e4, 0x74a9, 0x7604, 0x7717, 0x77f5, 0x78ac, 0x7945, 0x79c7, 0x7a37, 0x7a99, 0x7aee, 0x7b3a, 0x7b7d, 0x7bba, 0x7bf0, 0x7c21, 0x7c4e, 0x7c77, 0x7c9c, 0x7cbf, 0x7cdf, 0x7cfc, 0x7d18, 0x7d31, 0x7d49, 0x7d60, 0x7d74},
  {0x0150, 0x015c, 0x0168, 0x0174, 0x0182, 0x0191, 0x01a1, 0x01b2, 0x01c5, 0x01da, 0x01f0, 0x0209, 0x0224, 0x0243, 0x0265, 0x028b, 0x02b6, 0x02e8, 0x0321, 0x0363, 0x03b2, 0x0410, 0x0482, 0x0511, 0x05c8, 0x06bb, 0x080b, 0x09fb, 0x0d1c, 0x12e4, 0x2000, 0x4000, 0x6000, 0x6d1c, 0x72e4, 0x7604, 0x77f5, 0x7945, 0x7a37, 0x7aee, 0x7b7d, 0x7bf0, 0x7c4e, 0x7c9c, 0x7cdf, 0x7d18, 0x7d49, 0x7d74, 0x7d9b, 0x7dbd, 0x7ddb, 0x7df6, 0x7e0f, 0x7e26, 0x7e3a, 0x7e4d, 0x7e5f, 0x7e6f, 0x7e7d, 0x7e8b, 0x7e98, 0x7ea4, 0x7eaf, 0x7eba},
  {0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000},
  {0xfeaf, 0xfea3, 0xfe97, 0xfe8b, 0xfe7d, 0xfe6e, 0xfe5e, 0xfe4d, 0xfe3a, 0xfe25, 0xfe0f, 0xfdf6, 0xfddb, 0xfdbc, 0xfd9a, 0xfd74, 0xfd49, 0xfd17, 0xfcde, 0xfc9c, 0xfc4d, 0xfbef, 0xfb7d, 0xfaee, 0xfa37, 0xf944, 0xf7f4, 0xf604, 0xf2e3, 0xed1b, 0xdfff, 0xbfff, 0x9fff, 0x92e3, 0x8d1b, 0x89fb, 0x880a, 0x86ba, 0x85c8, 0x8511, 0x8482, 0x840f, 0x83b1, 0x8363, 0x8320, 0x82e7, 0x82b6, 0x828b, 0x8264, 0x8242, 0x8224, 0x8209, 0x81f0, 0x81d9, 0x81c5, 0x81b2, 0x81a0, 0x8190, 0x8182, 0x8174, 0x8167, 0x815b, 0x8150, 0x8145},
  {0xfd5f, 0xfd49, 0xfd31, 0xfd17, 0xfcfc, 0xfcde, 0xfcbe, 0xfc9c, 0xfc76, 0xfc4d, 0xfc21, 0xfbef, 0xfbb9, 0xfb7d, 0xfb3a, 0xfaee, 0xfa98, 0xfa37, 0xf9c7, 0xf944, 0xf8ab, 0xf7f4, 0xf716, 0xf604, 0xf4a8, 0xf2e3, 0xf07e, 0xed1b, 0xe80a, 0xdfff, 0xd2e3, 0xbfff, 0xad1b, 0x9fff, 0x97f4, 0x92e3, 0x8f80, 0x8d1b, 0x8b56, 0x89fb, 0x88e8, 0x880a, 0x8753, 0x86ba, 0x8638, 0x85c8, 0x8566, 0x8511, 0x84c5, 0x8482, 0x8445, 0x840f, 0x83de, 0x83b1, 0x8388, 0x8363, 0x8340, 0x8320, 0x8303, 0x82e7, 0x82ce, 0x82b6, 0x829f, 0x828b},
  {0xfc11, 0xfbef, 0xfbcc, 0xfba6, 0xfb7d, 0xfb51, 0xfb21, 0xfaee, 0xfab6, 0xfa79, 0xfa37, 0xf9ee, 0xf99e, 0xf944, 0xf8e1, 0xf872, 0xf7f4, 0xf765, 0xf6c1, 0xf604, 0xf526, 0xf41f, 0xf2e3, 0xf161, 0xef80, 0xed1b, 0xe9fa, 0xe5c7, 0xdfff, 0xd7f4, 0xcd1b, 0xbfff, 0xb2e3, 0xa80a, 0x9fff, 0x9a37, 0x9604, 0x92e3, 0x907f, 0x8e9e, 0x8d1b, 0x8bdf, 0x8ad9, 0x89fb, 0x893d, 0x8899, 0x880a, 0x878d, 0x871d, 0x86ba, 0x8661, 0x8610, 0x85c8, 0x8585, 0x8548, 0x8511, 0x84dd, 0x84ae, 0x8482, 0x8459, 0x8433, 0x840f, 0x83ee, 0x83ce},
  {0xfac5, 0xfa98, 0xfa69, 0xfa37, 0xfa01, 0xf9c7, 0xf988, 0xf944, 0xf8fb, 0xf8ab, 0xf854, 0xf7f4, 0xf78b, 0xf716, 0xf695, 0xf604, 0xf561, 0xf4a8, 0xf3d6, 0xf2e3, 0xf1c9, 0xf07e, 0xeef5, 0xed1b, 0xead8, 0xe80a, 0xe481, 0xdfff, 0xda37, 0xd2e3, 0xc9fa, 0xbfff, 0xb604, 0xad1b, 0xa5c7, 0x9fff, 0x9b7d, 0x97f4, 0x9526, 0x92e3, 0x910a, 0x8f80, 0x8e35, 0x8d1b, 0x8c29, 0x8b56, 0x8a9e, 0x89fb, 0x896a, 0x88e8, 0x8874, 0x880a, 0x87ab, 0x8753, 0x8703, 0x86ba, 0x8676, 0x8638, 0x85fe, 0x85c8, 0x8595, 0x8566, 0x853a, 0x8511},
  {0xf97b, 0xf944, 0xf90a, 0xf8cc, 0xf889, 0xf841, 0xf7f4, 0xf7a1, 0xf746, 0xf6e4, 0xf679, 0xf604, 0xf583, 0xf4f5, 0xf457, 0xf3a8, 0xf2e3, 0xf205, 0xf109, 0xefe9, 0xee9d, 0xed1b, 0xeb56, 0xe93d, 0xe6ba, 0xe3b1, 0xdfff, 0xdb7d, 0xd604, 0xcf80, 0xc80a, 0xbfff, 0xb7f4, 0xb07e, 0xa9fb, 0xa482, 0x9fff, 0x9c4e, 0x9945, 0x96c2, 0x94a9, 0x92e3, 0x9161, 0x9015, 0x8ef5, 0x8df9, 0x8d1b, 0x8c57, 0x8ba7, 0x8b0a, 0x8a7b, 0x89fb, 0x8985, 0x891a, 0x88b8, 0x885e, 0x880a, 0x87bd, 0x8775, 0x8733, 0x86f4, 0x86ba, 0x8683, 0x8650},
  {0xf835, 0xf7f4, 0xf7af, 0xf765, 0xf716, 0xf6c1, 0xf666, 0xf604, 0xf599, 0xf526, 0xf4a8, 0xf41f, 0xf389, 0xf2e3, 0xf22c, 0xf161, 0xf07e, 0xef80, 0xee61, 0xed1b, 0xeba7, 0xe9fa, 0xe80a, 0xe5c7, 0xe320, 0xdfff, 0xdc4e, 0xd7f4, 0xd2e3, 0xcd1b, 0xc6ba, 0xbfff, 0xb945, 0xb2e3, 0xad1b, 0xa80a, 0xa3b1, 0x9fff, 0x9cdf, 0x9a37, 0x97f4, 0x9604, 0x9458, 0x92e3, 0x919e, 0x907f, 0x8f80, 0x8e9e, 0x8dd2, 0x8d1b, 0x8c76, 0x8bdf, 0x8b56, 0x8ad9, 0x8a65, 0x89fb, 0x8998, 0x893d, 0x88e8, 0x8899, 0x884f, 0x880a, 0x87ca, 0x878d},
  {0xf6f3, 0xf6a8, 0xf659, 0xf604, 0xf5a9, 0xf548, 0xf4df, 0xf46f, 0xf3f5, 0xf372, 0xf2e3, 0xf247, 0xf19d, 0xf0e3, 0xf015, 0xef31, 0xee35, 0xed1b, 0xebdf, 0xea7b, 0xe8e8, 0xe71d, 0xe510, 0xe2b5, 0xdfff, 0xdcde, 0xd945, 0xd526, 0xd07e, 0xcb56, 0xc5c7, 0xbfff, 0xba37, 0xb4a9, 0xaf80, 0xaad8, 0xa6ba, 0xa320, 0x9fff, 0x9d49, 0x9aee, 0x98e2, 0x9717, 0x9583, 0x941f, 0x92e3, 0x91ca, 0x90cd, 0x8fea, 0x8f1c, 0x8e61, 0x8db7, 0x8d1b, 0x8c8d, 0x8c09, 0x8b90, 0x8b1f, 0x8ab7, 0x8a55, 0x89fb, 0x89a6, 0x8956, 0x890c, 0x88c6},
  {0xf5b5, 0xf561, 0xf508, 0xf4a8, 0xf443, 0xf3d6, 0xf361, 0xf2e3, 0xf25c, 0xf1c9, 0xf12b, 0xf07e, 0xefc2, 0xeef5, 0xee13, 0xed1b, 0xec09, 0xead8, 0xe985, 0xe80a, 0xe661, 0xe481, 0xe264, 0xdfff, 0xdd49, 0xda37, 0xd6c2, 0xd2e3, 0xce9d, 0xc9fa, 0xc510, 0xbfff, 0xbaee, 0xb604, 0xb161, 0xad1b, 0xa93d, 0xa5c7, 0xa2b6, 0x9fff, 0x9d9b, 0x9b7d, 0x999e, 0x97f4, 0x9679, 0x9526, 0x93f6, 0x92e3, 0x91eb, 0x910a, 0x903c, 0x8f80, 0x8ed4, 0x8e35, 0x8da3, 0x8d1b, 0x8c9e, 0x8c29, 0x8bbc, 0x8b56, 0x8af7, 0x8a9e, 0x8a4a, 0x89fb},
  {0xf47c, 0xf41f, 0xf3bc, 0xf353, 0xf2e3, 0xf26b, 0xf1eb, 0xf161, 0xf0cd, 0xf02d, 0xef80, 0xeec5, 0xedf9, 0xed1b, 0xec29, 0xeb1f, 0xe9fa, 0xe8b8, 0xe753, 0xe5c7, 0xe40f, 0xe224, 0xdfff, 0xdd9a, 0xdaee, 0xd7f4, 0xd4a8, 0xd109, 0xcd1b, 0xc8e8, 0xc481, 0xbfff, 0xbb7d, 0xb716, 0xb2e3, 0xaef5, 0xab56, 0xa80a, 0xa510, 0xa264, 0x9fff, 0x9ddb, 0x9bf0, 0x9a37, 0x98ab, 0x9747, 0x9604, 0x94e0, 0x93d6, 0x92e3, 0x9206, 0x913a, 0x907f, 0x8fd2, 0x8f32, 0x8e9e, 0x8e14, 0x8d93, 0x8d1b, 0x8cab, 0x8c42, 0x8bdf, 0x8b83, 0x8b2b},
  {0xf348, 0xf2e3, 0xf278, 0xf205, 0xf18b, 0xf109, 0xf07e, 0xefe9, 0xef49, 0xee9d, 0xede4, 0xed1b, 0xec42, 0xeb56, 0xea55, 0xe93d, 0xe80a, 0xe6ba, 0xe548, 0xe3b1, 0xe1ef, 0xdfff, 0xdddb, 0xdb7d, 0xd8e1, 0xd604, 0xd2e3, 0xcf80, 0xcbdf, 0xc80a, 0xc40f, 0xbfff, 0xbbf0, 0xb7f4, 0xb41f, 0xb07e, 0xad1b, 0xa9fb, 0xa71d, 0xa482, 0xa224, 0x9fff, 0x9e0f, 0x9c4e, 0x9ab7, 0x9945, 0x97f4, 0x96c2, 0x95a9, 0x94a9, 0x93bd, 0x92e3, 0x921b, 0x9161, 0x90b5, 0x9015, 0x8f80, 0x8ef5, 0x8e73, 0x8df9, 0x8d87, 0x8d1b, 0x8cb6, 0x8c57},
  {0xf21b, 0xf1ad, 0xf13a, 0xf0bf, 0xf03c, 0xefb0, 0xef1c, 0xee7c, 0xedd2, 0xed1b, 0xec56, 0xeb82, 0xea9d, 0xe9a6, 0xe899, 0xe775, 0xe637, 0xe4dd, 0xe362, 0xe1c4, 0xdfff, 0xde0f, 0xdbf0, 0xd99e, 0xd716, 0xd458, 0xd161, 0xce35, 0xcad8, 0xc753, 0xc3b1, 0xbfff, 0xbc4e, 0xb8ab, 0xb526, 0xb1c9, 0xae9d, 0xaba7, 0xa8e8, 0xa661, 0xa40f, 0xa1f0, 0x9fff, 0x9e3a, 0x9c9c, 0x9b22, 0x99c7, 0x9889, 0x9766, 0x9659, 0x9561, 0x947c, 0x93a8, 0x92e3, 0x922c, 0x9182, 0x90e3, 0x904e, 0x8fc3, 0x8f40, 0x8ec5, 0x8e51, 0x8de4, 0x8d7d},
  {0xf0f3, 0xf07e, 0xf003, 0xef80, 0xeef5, 0xee61, 0xedc3, 0xed1b, 0xec67, 0xeba7, 0xead8, 0xe9fa, 0xe90b, 0xe80a, 0xe6f4, 0xe5c7, 0xe481, 0xe320, 0xe1a0, 0xdfff, 0xde3a, 0xdc4e, 0xda37, 0xd7f4, 0xd583, 0xd2e3, 0xd015, 0xcd1b, 0xc9fa, 0xc6ba, 0xc362, 0xbfff, 0xbc9c, 0xb945, 0xb604, 0xb2e3, 0xafe9, 0xad1b, 0xaa7b, 0xa80a, 0xa5c7, 0xa3b1, 0xa1c5, 0x9fff, 0x9e5e, 0x9cdf, 0x9b7d, 0x9a37, 0x990b, 0x97f4, 0x96f3, 0x9604, 0x9526, 0x9458, 0x9397, 0x92e3, 0x923b, 0x919e, 0x910a, 0x907f, 0x8ffc, 0x8f80, 0x8f0c, 0x8e9e},
  {0xefd1, 0xef56, 0xeed4, 0xee49, 0xedb7, 0xed1b, 0xec76, 0xebc5, 0xeb09, 0xea40, 0xe969, 0xe883, 0xe78c, 0xe683, 0xe566, 0xe432, 0xe2e7, 0xe181, 0xdfff, 0xde5e, 0xdc9c, 0xdab6, 0xd8ab, 0xd679, 0xd41f, 0xd19d, 0xcef5, 0xcc29, 0xc93d, 0xc637, 0xc320, 0xbfff, 0xbcdf, 0xb9c7, 0xb6c2, 0xb3d6, 0xb10a, 0xae61, 0xabdf, 0xa985, 0xa753, 0xa548, 0xa363, 0xa1a0, 0x9fff, 0x9e7d, 0x9d18, 0x9bcc, 0x9a99, 0x997b, 0x9872, 0x977b, 0x9695, 0x95be, 0x94f5, 0x9439, 0x9389, 0x92e3, 0x9248, 0x91b5, 0x912b, 0x90a8, 0x902d, 0x8fb8},
  {0xeeb7, 0xee35, 0xedac, 0xed1b, 0xec82, 0xebdf, 0xeb32, 0xea7b, 0xe9b8, 0xe8e8, 0xe80a, 0xe71d, 0xe620, 0xe510, 0xe3ed, 0xe2b5, 0xe167, 0xdfff, 0xde7d, 0xdcde, 0xdb21, 0xd945, 0xd746, 0xd526, 0xd2e3, 0xd07e, 0xcdf9, 0xcb56, 0xc899, 0xc5c7, 0xc2e7, 0xbfff, 0xbd17, 0xba37, 0xb766, 0xb4a9, 0xb205, 0xaf80, 0xad1b, 0xaad8, 0xa8b8, 0xa6ba, 0xa4dd, 0xa320, 0xa182, 0x9fff, 0x9e98, 0x9d49, 0x9c11, 0x9aee, 0x99df, 0x98e2, 0x97f4, 0x9717, 0x9647, 0x9583, 0x94cc, 0x941f, 0x937d, 0x92e3, 0x9253, 0x91ca, 0x9148, 0x90cd},
  {0xeda3, 0xed1b, 0xec8c, 0xebf5, 0xeb56, 0xeaad, 0xe9fa, 0xe93d, 0xe873, 0xe79d, 0xe6ba, 0xe5c7, 0xe4c5, 0xe3b1, 0xe28a, 0xe14f, 0xdfff, 0xde98, 0xdd17, 0xdb7d, 0xd9c7, 0xd7f4, 0xd604, 0xd3f6, 0xd1c9, 0xcf80, 0xcd1b, 0xca9d, 0xc80a, 0xc566, 0xc2b6, 0xbfff, 0xbd49, 0xba99, 0xb7f4, 0xb561, 0xb2e3, 0xb07e, 0xae35, 0xac09, 0xa9fb, 0xa80a, 0xa638, 0xa482, 0xa2e7, 0xa167, 0x9fff, 0x9eaf, 0x9d74, 0x9c4e, 0x9b3a, 0x9a37, 0x9945, 0x9861, 0x978b, 0x96c2, 0x9604, 0x9551, 0x94a9, 0x9409, 0x9372, 0x92e3, 0x925c, 0x91db},
  {0xec95, 0xec09, 0xeb74, 0xead8, 0xea33, 0xe985, 0xe8cd, 0xe80a, 0xe73b, 0xe661, 0xe578, 0xe481, 0xe37b, 0xe264, 0xe13b, 0xdfff, 0xdeaf, 0xdd49, 0xdbcc, 0xda37, 0xd889, 0xd6c2, 0xd4e0, 0xd2e3, 0xd0cd, 0xce9d, 0xcc56, 0xc9fa, 0xc78c, 0xc510, 0xc28a, 0xbfff, 0xbd74, 0xbaee, 0xb872, 0xb604, 0xb3a8, 0xb161, 0xaf32, 0xad1b, 0xab1f, 0xa93d, 0xa775, 0xa5c7, 0xa433, 0xa2b6, 0xa150, 0x9fff, 0x9ec3, 0x9d9b, 0x9c84, 0x9b7d, 0x9a86, 0x999e, 0x98c3, 0x97f4, 0x9732, 0x9679, 0x95cb, 0x9526, 0x948a, 0x93f6, 0x9369, 0x92e3},
  {0xeb8f, 0xeafe, 0xea65, 0xe9c4, 0xe91a, 0xe867, 0xe7aa, 0xe6e3, 0xe610, 0xe531, 0xe445, 0xe34b, 0xe242, 0xe129, 0xdfff, 0xdec3, 0xdd74, 0xdc11, 0xda99, 0xd90a, 0xd765, 0xd5a9, 0xd3d6, 0xd1eb, 0xcfe9, 0xcdd2, 0xcba7, 0xc96a, 0xc71d, 0xc4c5, 0xc264, 0xbfff, 0xbd9a, 0xbb3a, 0xb8e1, 0xb695, 0xb458, 0xb22c, 0xb015, 0xae14, 0xac29, 0xaa55, 0xa899, 0xa6f4, 0xa566, 0xa3ee, 0xa28a, 0xa13b, 0x9fff, 0x9ed5, 0x9dbd, 0x9cb4, 0x9bb9, 0x9acd, 0x99ee, 0x991c, 0x9854, 0x9797, 0x96e4, 0x963b, 0x959a, 0x9501, 0x946f, 0x93e5},
  {0xea90, 0xe9fa, 0xe95d, 0xe8b8, 0xe80a, 0xe753, 0xe692, 0xe5c7, 0xe4f1, 0xe40f, 0xe320, 0xe224, 0xe119, 0xdfff, 0xded5, 0xdd9a, 0xdc4e, 0xdaee, 0xd97b, 0xd7f4, 0xd659, 0xd4a8, 0xd2e3, 0xd109, 0xcf1c, 0xcd1b, 0xcb09, 0xc8e8, 0xc6ba, 0xc481, 0xc242, 0xbfff, 0xbdbc, 0xbb7d, 0xb945, 0xb716, 0xb4f5, 0xb2e3, 0xb0e3, 0xaef5, 0xad1b, 0xab56, 0xa9a6, 0xa80a, 0xa683, 0xa510, 0xa3b1, 0xa264, 0xa129, 0x9fff, 0x9ee6, 0x9ddb, 0x9cdf, 0x9bf0, 0x9b0e, 0x9a37, 0x996c, 0x98ab, 0x97f4, 0x9747, 0x96a1, 0x9604, 0x956e, 0x94e0},
  {0xe998, 0xe8fe, 0xe85d, 0xe7b5, 0xe703, 0xe649, 0xe585, 0xe4b7, 0xe3dd, 0xe2f9, 0xe208, 0xe10b, 0xdfff, 0xdee5, 0xddbc, 0xdc83, 0xdb3a, 0xd9df, 0xd872, 0xd6f3, 0xd561, 0xd3bc, 0xd205, 0xd03c, 0xce61, 0xcc76, 0xca7b, 0xc873, 0xc661, 0xc445, 0xc224, 0xbfff, 0xbddb, 0xbbb9, 0xb99e, 0xb78b, 0xb583, 0xb389, 0xb19d, 0xafc3, 0xadf9, 0xac42, 0xaa9e, 0xa90c, 0xa78d, 0xa620, 0xa4c5, 0xa37b, 0xa242, 0xa119, 0x9fff, 0x9ef4, 0x9df6, 0x9d06, 0x9c21, 0x9b48, 0x9a7a, 0x99b6, 0x98fb, 0x984a, 0x97a1, 0x9700, 0x9667, 0x95d4},
  {0xe8a7, 0xe80a, 0xe766, 0xe6ba, 0xe605, 0xe548, 0xe481, 0xe3b1, 0xe2d6, 0xe1ef, 0xe0fd, 0xdfff, 0xdef4, 0xdddb, 0xdcb3, 0xdb7d, 0xda37, 0xd8e1, 0xd77b, 0xd604, 0xd47c, 0xd2e3, 0xd13a, 0xcf80, 0xcdb7, 0xcbdf, 0xc9fa, 0xc80a, 0xc610, 0xc40f, 0xc208, 0xbfff, 0xbdf6, 0xbbf0, 0xb9ee, 0xb7f4, 0xb604, 0xb41f, 0xb248, 0xb07e, 0xaec5, 0xad1b, 0xab82, 0xa9fb, 0xa884, 0xa71d, 0xa5c7, 0xa482, 0xa34b, 0xa224, 0xa10b, 0x9fff, 0x9f01, 0x9e0f, 0x9d29, 0x9c4e, 0x9b7d, 0x9ab7, 0x99f9, 0x9945, 0x9899, 0x97f4, 0x9758, 0x96c2},
  {0xe7bd, 0xe71d, 0xe676, 0xe5c7, 0xe510, 0xe451, 0xe388, 0xe2b5, 0xe1d9, 0xe0f2, 0xdfff, 0xdf01, 0xddf6, 0xdcde, 0xdbb9, 0xda86, 0xd945, 0xd7f4, 0xd695, 0xd526, 0xd3a8, 0xd21b, 0xd07e, 0xced4, 0xcd1b, 0xcb56, 0xc985, 0xc7aa, 0xc5c7, 0xc3de, 0xc1f0, 0xbfff, 0xbe0f, 0xbc21, 0xba37, 0xb854, 0xb679, 0xb4a9, 0xb2e3, 0xb12b, 0xaf80, 0xade4, 0xac57, 0xaad8, 0xa96a, 0xa80a, 0xa6ba, 0xa578, 0xa445, 0xa320, 0xa208, 0xa0fe, 0x9fff, 0x9f0d, 0x9e26, 0x9d49, 0x9c77, 0x9bae, 0x9aee, 0x9a37, 0x9989, 0x98e2, 0x9842, 0x97a9},
  {0xe6da, 0xe637, 0xe58e, 0xe4dd, 0xe424, 0xe362, 0xe298, 0xe1c4, 0xe0e7, 0xdfff, 0xdf0d, 0xde0f, 0xdd05, 0xdbf0, 0xdacd, 0xd99e, 0xd861, 0xd716, 0xd5be, 0xd458, 0xd2e3, 0xd161, 0xcfd1, 0xce35, 0xcc8c, 0xcad8, 0xc91a, 0xc753, 0xc585, 0xc3b1, 0xc1d9, 0xbfff, 0xbe25, 0xbc4e, 0xba7a, 0xb8ab, 0xb6e4, 0xb526, 0xb372, 0xb1c9, 0xb02d, 0xae9d, 0xad1b, 0xaba7, 0xaa41, 0xa8e8, 0xa79e, 0xa661, 0xa531, 0xa40f, 0xa2f9, 0xa1f0, 0xa0f2, 0x9fff, 0x9f18, 0x9e3a, 0x9d67, 0x9c9c, 0x9bdb, 0x9b22, 0x9a71, 0x99c7, 0x9925, 0x9889},
  {0xe5fd, 0xe559, 0xe4ad, 0xe3fa, 0xe340, 0xe27d, 0xe1b1, 0xe0dd, 0xdfff, 0xdf17, 0xde25, 0xdd29, 0xdc21, 0xdb0d, 0xd9ee, 0xd8c3, 0xd78b, 0xd646, 0xd4f5, 0xd397, 0xd22c, 0xd0b5, 0xcf32, 0xcda3, 0xcc09, 0xca65, 0xc8b8, 0xc703, 0xc548, 0xc388, 0xc1c4, 0xbfff, 0xbe3a, 0xbc77, 0xbab6, 0xb8fb, 0xb747, 0xb59a, 0xb3f6, 0xb25c, 0xb0cd, 0xaf4a, 0xadd2, 0xac67, 0xab09, 0xa9b8, 0xa874, 0xa73c, 0xa610, 0xa4f1, 0xa3de, 0xa2d6, 0xa1d9, 0xa0e7, 0x9fff, 0x9f21, 0x9e4d, 0x9d82, 0x9cbf, 0x9c04, 0x9b51, 0x9aa6, 0x9a01, 0x9964},
  {0xe528, 0xe481, 0xe3d4, 0xe320, 0xe264, 0xe1a0, 0xe0d4, 0xdfff, 0xdf21, 0xde3a, 0xdd49, 0xdc4e, 0xdb48, 0xda37, 0xd91b, 0xd7f4, 0xd6c2, 0xd583, 0xd439, 0xd2e3, 0xd182, 0xd015, 0xce9d, 0xcd1b, 0xcb8f, 0xc9fa, 0xc85e, 0xc6ba, 0xc510, 0xc362, 0xc1b2, 0xbfff, 0xbe4d, 0xbc9c, 0xbaee, 0xb945, 0xb7a1, 0xb604, 0xb46f, 0xb2e3, 0xb161, 0xafe9, 0xae7d, 0xad1b, 0xabc5, 0xaa7b, 0xa93d, 0xa80a, 0xa6e3, 0xa5c7, 0xa4b7, 0xa3b1, 0xa2b6, 0xa1c5, 0xa0dd, 0x9fff, 0x9f2b, 0x9e5e, 0x9d9b, 0x9cdf, 0x9c2a, 0x9b7d, 0x9ad7, 0x9a37},
  {0xe458, 0xe3b1, 0xe302, 0xe24d, 0xe190, 0xe0cc, 0xdfff, 0xdf2a, 0xde4d, 0xdd66, 0xdc76, 0xdb7d, 0xda7a, 0xd96c, 0xd854, 0xd731, 0xd604, 0xd4cc, 0xd389, 0xd23b, 0xd0e3, 0xcf80, 0xce13, 0xcc9e, 0xcb1f, 0xc998, 0xc80a, 0xc676, 0xc4dd, 0xc340, 0xc1a0, 0xbfff, 0xbe5e, 0xbcbf, 0xbb22, 0xb988, 0xb7f4, 0xb666, 0xb4e0, 0xb361, 0xb1eb, 0xb07e, 0xaf1c, 0xadc4, 0xac76, 0xab33, 0xa9fb, 0xa8cd, 0xa7ab, 0xa693, 0xa585, 0xa482, 0xa388, 0xa298, 0xa1b2, 0xa0d4, 0x9fff, 0x9f33, 0x9e6e, 0x9db2, 0x9cfc, 0x9c4e, 0x9ba6, 0x9b05},
  {0xe390, 0xe2e7, 0xe237, 0xe181, 0xe0c4, 0xdfff, 0xdf33, 0xde5e, 0xdd81, 0xdc9c, 0xdbae, 0xdab6, 0xd9b6, 0xd8ab, 0xd797, 0xd679, 0xd551, 0xd41f, 0xd2e3, 0xd19d, 0xd04e, 0xcef5, 0xcd93, 0xcc29, 0xcab6, 0xc93d, 0xc7bd, 0xc637, 0xc4ad, 0xc320, 0xc190, 0xbfff, 0xbe6e, 0xbcdf, 0xbb51, 0xb9c7, 0xb842, 0xb6c2, 0xb548, 0xb3d6, 0xb26b, 0xb10a, 0xafb1, 0xae61, 0xad1b, 0xabdf, 0xaaad, 0xa985, 0xa867, 0xa753, 0xa649, 0xa548, 0xa451, 0xa363, 0xa27d, 0xa1a0, 0xa0cc, 0x9fff, 0x9f3b, 0x9e7d, 0x9dc7, 0x9d18, 0x9c6f, 0x9bcc},
  {0xe2cd, 0xe224, 0xe173, 0xe0bd, 0xdfff, 0xdf3a, 0xde6e, 0xdd9a, 0xdcbe, 0xdbda, 0xdaee, 0xd9f9, 0xd8fb, 0xd7f4, 0xd6e4, 0xd5cb, 0xd4a8, 0xd37d, 0xd248, 0xd109, 0xcfc2, 0xce73, 0xcd1b, 0xcbbc, 0xca55, 0xc8e8, 0xc775, 0xc5fd, 0xc481, 0xc302, 0xc181, 0xbfff, 0xbe7d, 0xbcfc, 0xbb7d, 0xba01, 0xb889, 0xb716, 0xb5a9, 0xb443, 0xb2e3, 0xb18c, 0xb03c, 0xaef5, 0xadb7, 0xac82, 0xab56, 0xaa34, 0xa91a, 0xa80a, 0xa703, 0xa605, 0xa510, 0xa424, 0xa340, 0xa264, 0xa190, 0xa0c4, 0x9fff, 0x9f42, 0x9e8b, 0x9ddb, 0x9d31, 0x9c8e},
  {0xe211, 0xe167, 0xe0b6, 0xdfff, 0xdf42, 0xde7d, 0xddb1, 0xdcde, 0xdc04, 0xdb21, 0xda37, 0xd945, 0xd84a, 0xd746, 0xd63b, 0xd526, 0xd409, 0xd2e3, 0xd1b5, 0xd07e, 0xcf40, 0xcdf9, 0xccab, 0xcb56, 0xc9fa, 0xc899, 0xc732, 0xc5c7, 0xc459, 0xc2e7, 0xc174, 0xbfff, 0xbe8b, 0xbd17, 0xbba6, 0xba37, 0xb8cc, 0xb766, 0xb604, 0xb4a9, 0xb353, 0xb205, 0xb0bf, 0xaf80, 0xae4a, 0xad1b, 0xabf6, 0xaad8, 0xa9c4, 0xa8b8, 0xa7b5, 0xa6ba, 0xa5c7, 0xa4dd, 0xa3fb, 0xa320, 0xa24d, 0xa182, 0xa0bd, 0x9fff, 0x9f48, 0x9e98, 0x9ded, 0x9d49},
  {0xe15b, 0xe0b0, 0xdfff, 0xdf48, 0xde8b, 0xddc7, 0xdcfc, 0xdc2a, 0xdb51, 0xda70, 0xd988, 0xd898, 0xd7a1, 0xd6a1, 0xd59a, 0xd48a, 0xd372, 0xd252, 0xd12b, 0xcffb, 0xcec5, 0xcd87, 0xcc42, 0xcaf7, 0xc9a6, 0xc84f, 0xc6f4, 0xc595, 0xc432, 0xc2cd, 0xc167, 0xbfff, 0xbe98, 0xbd31, 0xbbcc, 0xba6a, 0xb90a, 0xb7af, 0xb659, 0xb508, 0xb3bd, 0xb278, 0xb13a, 0xb003, 0xaed4, 0xadac, 0xac8c, 0xab75, 0xaa65, 0xa95d, 0xa85e, 0xa766, 0xa676, 0xa58e, 0xa4ae, 0xa3d4, 0xa303, 0xa238, 0xa174, 0xa0b6, 0x9fff, 0x9f4f, 0x9ea4, 0x9dff},
  {0xe0aa, 0xdfff, 0xdf4e, 0xde98, 0xdddb, 0xdd17, 0xdc4e, 0xdb7d, 0xdaa5, 0xd9c7, 0xd8e1, 0xd7f4, 0xd700, 0xd604, 0xd501, 0xd3f6, 0xd2e3, 0xd1c9, 0xd0a8, 0xcf80, 0xce51, 0xcd1b, 0xcbdf, 0xca9d, 0xc956, 0xc80a, 0xc6ba, 0xc566, 0xc40f, 0xc2b6, 0xc15b, 0xbfff, 0xbea4, 0xbd49, 0xbbf0, 0xba99, 0xb945, 0xb7f4, 0xb6a8, 0xb561, 0xb41f, 0xb2e3, 0xb1ae, 0xb07e, 0xaf56, 0xae35, 0xad1b, 0xac09, 0xaafe, 0xa9fb, 0xa8ff, 0xa80a, 0xa71d, 0xa638, 0xa559, 0xa482, 0xa3b1, 0xa2e7, 0xa224, 0xa167, 0xa0b0, 0x9fff, 0x9f54, 0x9eaf},
  {0xdfff, 0xdf54, 0xdea4, 0xdded, 0xdd31, 0xdc6f, 0xdba6, 0xdad7, 0xda01, 0xd925, 0xd842, 0xd757, 0xd666, 0xd56e, 0xd46f, 0xd369, 0xd25c, 0xd148, 0xd02d, 0xcf0b, 0xcde4, 0xccb6, 0xcb82, 0xca49, 0xc90c, 0xc7c9, 0xc683, 0xc53a, 0xc3ed, 0xc29f, 0xc150, 0xbfff, 0xbeaf, 0xbd5f, 0xbc11, 0xbac5, 0xb97b, 0xb835, 0xb6f3, 0xb5b5, 0xb47c, 0xb349, 0xb21b, 0xb0f3, 0xafd2, 0xaeb7, 0xada3, 0xac96, 0xab8f, 0xaa90, 0xa998, 0xa8a7, 0xa7bd, 0xa6da, 0xa5fd, 0xa528, 0xa459, 0xa390, 0xa2ce, 0xa211, 0xa15b, 0xa0aa, 0x9fff, 0x9f5a},
  {0xdf5a, 0xdeaf, 0xddff, 0xdd49, 0xdc8d, 0xdbcc, 0xdb05, 0xda37, 0xd963, 0xd889, 0xd7a9, 0xd6c2, 0xd5d4, 0xd4e0, 0xd3e5, 0xd2e3, 0xd1db, 0xd0cd, 0xcfb8, 0xce9d, 0xcd7d, 0xcc56, 0xcb2b, 0xc9fa, 0xc8c5, 0xc78c, 0xc650, 0xc510, 0xc3ce, 0xc28a, 0xc145, 0xbfff, 0xbeb9, 0xbd74, 0xbc30, 0xbaee, 0xb9af, 0xb872, 0xb739, 0xb604, 0xb4d4, 0xb3a8, 0xb282, 0xb161, 0xb046, 0xaf32, 0xae23, 0xad1b, 0xac1a, 0xab1f, 0xaa2b, 0xa93d, 0xa856, 0xa775, 0xa69b, 0xa5c7, 0xa4fa, 0xa433, 0xa371, 0xa2b6, 0xa200, 0xa150, 0xa0a5, 0x9fff}
};

uint16_t atan2(uint8_t x, uint8_t y){
  return atan_table[(x>>2) & 0x3F][(y>>2) & 0x3F];
}
*/

/*
uint8_t atan2(uint8_t x, uint8_t y){
  return atan_table[(x>>3) & 0x1F][(y>>3) & 0x1F];
}
*/

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

2 hours ago, Zalman_ said:

Большое спасибо

Посмотрели?  Что не понравилось?...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...